Create a cell from a matrix

1 次查看(过去 30 天)
Dear community, my problem seems to be quite easy, but i didnt solved it until now.
I have to vectors of size n*1 arranged in a matrix.
mat1=[1,2,3,4,5;0,0,1,0,1]
This matrix is loaded from another workspace. My gain is, to arrange them with only one command in an 2x1 cell, in which the field {1,1} is the first vector, and field {2,1} is the second vector.
This should work also for many rows more. I tried
a={mat1}
But this puts all in the 1x1 cell field. How can I solve this? Thanks Marc

采纳的回答

KSSV
KSSV 2017-11-13
编辑:KSSV 2017-11-13
C1 = num2cell(mymatrix,2)
This works for any 2D dimension of matrix..

更多回答(1 个)

KL
KL 2017-11-13
编辑:KL 2017-11-13
If you want to have each row in separate cells,
mat1=[1,2,3,4,5;0,0,1,0,1];
C1 = arrayfun(@(x) {mat1(x,:)},1:size(mat1,1))
C =
1×2 cell array
[1×5 double] [1×5 double]

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by