MATLAB Answers

0

How to put a matrix into an cell element?

Asked by Akash Menon on 4 Mar 2019
Latest activity Edited by 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.

  0 Comments

Sign in to comment.

2 Answers

Answer by Akash Menon on 5 Mar 2019
Edited by Akash Menon on 5 Mar 2019
 Accepted Answer

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!

  0 Comments

Sign in to comment.


Answer by 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

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.