Adding a new variable to a table and assigning a value

3 次查看(过去 30 天)
I am working with a table with multiple variables (called T3) - dimensions are 1349x26. This is one station (CTD instrument).
I want to add a new variable called Station ID and define it's value as 3 for all 1349 rows.
I know how to do it in the table, but I am confused how to write it in a code.
Example of what I did:
Station ID = 3;
T3 = addvars(T3, Station ID, 'Before', 'VarName1');
I was using the addvars function but I kept getting an error because Station ID's number of rows, does not match the table's height.
How can I define Station ID's dimensions and fill all 1349 rows with the same value?

采纳的回答

Dyuman Joshi
Dyuman Joshi 2023-9-22
编辑:Dyuman Joshi 2023-9-22
"How can I define Station ID's dimensions and fill all 1349 rows with the same value? "
There are many ways of doing that -
%Number of rows in the table
s = size(T3,1);
%Method 1
Station_ID = 3*ones(s,1);
%Method 2
Station_ID = repelem(3,s,1);
%Method 3
Station_ID = 3 + zeros(s,1);
  2 个评论
Rachel
Rachel 2023-9-22
Thank you!
Just a clarification, the 1 in s= size(T3,1) means just for one column correct?
Dyuman Joshi
Dyuman Joshi 2023-9-22
编辑:Dyuman Joshi 2023-9-22
No, the 1 is used to get the size of the 1st dimension of T3, as rows are the 1st dimension of matrices.
Here's an example to give you more idea about it -
T3 = zeros(2,3,5);
%Get the size of T3
size(T3)
ans = 1×3
2 3 5
%Get the size of 1st dimension of T3
size(T3,1)
ans = 2
%Get the size of 2nd dimension of T3
size(T3,2)
ans = 3
%Get the size of 3rd dimension of T3
size(T3,3)
ans = 5
Refer to the documentation of size for additional information.
Also, @Rachel, if my answer solved your problem, please consider accepting it.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Types 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by