Hey all, I need to store an array in every element of the array I have, how do i do this?

Example: For an array say x, I want every element in x to have an array. so x(1,1) will have an (m X n) matrix and so on.

 采纳的回答

Use cell array like this
X=cell(3,3);
X{1,1}=rand(3,2);
X{2,1}=rand(5,7);
and so on

3 个评论

Thanks for the reply Mohammad, but my main array does not have a predefined size, it keeps incrementing.
X = {};
K = 0;
while rand() <= 0.93
K = K + 1;
n = randi(50);
X{K} = rand(1,n);
end
There, a cell of indefinite length, with each cell member being of potentially different size. Adapt as needed.
Then don't predefine it. You can either give it a blank cell array as walter said in above post, or you can start with something like this:
x{1,1}=rand(3,2)
x =
[3x2 double]
x{3,5}=rand(4,6)
x =
[3x2 double] [] [] [] []
[] [] [] [] []
[] [] [] [] [4x6 double]
x starts to expand and it grows. However, due to performance issue it is not recommended. But if that's what needed then that's what is needed.

请先登录,再进行评论。

更多回答(0 个)

类别

在 帮助中心 和 File 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