Saving a variable with an index in a for loop

8 次查看(过去 30 天)
Hello. I am running into an issue of saving a created matrix with an index added to it for example
for i=1:10
x=1:10
y=1:10
z=1:10
A=[x y z]
end
What im tryng to do is then save the resulting matrix as A1, A2, A3 ect. any pointers for this?

回答(1 个)

Steven Lord
Steven Lord 2021-10-4
Can you do this? Yes.
Should you do this? The general consensus is no. See that Answers post for an explanation and alternatives.
  3 个评论
Walter Roberson
Walter Roberson 2021-10-4
If you do not have consistency of sizes, then use a cell array
A{i} = [x y z]
Stephen23
Stephen23 2021-10-5
编辑:Stephen23 2021-10-5
The solutions given above concatenate your data, which apparently your data is not suitable for.
You can trivially resolve this by using a cell array, for example:
c = cell(10,3);
for ii = 1:10
c{ii,1} = 1:10;
c{ii,2} = 1:10;
c{ii,3} = 1:10;
end
Your approach of putting pseudo-indices into the variable names should definitely be avoided.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by