MATLAB Answers

How to put a matrix into an cell element?

7 views (last 30 days)
Akash Menon
Akash Menon on 4 Mar 2019
Edited: Akash Menon on 5 Mar 2019
five.PNG
Hi everyone,
I have a cell array called inputs2 with 7 coloumns and 10001 rows. I want to be able to take each row entry and combine it to a single matrix and put that into a cell array like shown below.
four.PNG
% So like this
[0.8668;0.3571;0.2254;0.7989;0.4415;0.1627;0.3671] in the first cell and so on [..;..;..;..;..;..;..;]... for the 10001 entries.

Accepted Answer

Akash Menon
Akash Menon on 5 Mar 2019
Edited: Akash Menon on 5 Mar 2019
for i=1:10001
new_cell{i}=vertcat(input_test1{i,1},input_test1{i,2},input_test1{i,3},input_test1{i,4},input_test1{i,5},inputs_test1{i,6},input_test1{i,7});
end
new_cell=new_cell'; % Transpose if you want
% Alternatively if you desire the individual cells to have a row matrix- use 'horzcat' instead of 'vertcat'
% If you have more coloumns- use a nested loop (for j=1:(number of coloumns)) after the first loop
% Example for i=1:10000
% for j=1:7
% new_cell{i}=vertcat(input_test{i,j});
% end
% end
You should get a result as shown on the left.
Hope it helps!

More Answers (1)

Kevin Phung
Kevin Phung on 4 Mar 2019
new_M = cell(1,size(inputs2,1));
for i = 1:size(inputs2,1)
new_M{i} = inputs2{1}(i,:)
end
  1 Comment
Akash Menon
Akash Menon on 5 Mar 2019
Hey!
Thanks for the response.
Unfortunately this didn't work. I just had a long day and couldn't think .Figured it out now. Posted back above.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!