move a row from a cell to another cell

7 views (last 30 days)
I had a cell array Q like this
Q=cell(5,1);
Q{1,:}=[1 2 3 4;11 22 33 4;11 2 33 4];
Q{2,:}=[1 11 11 2;22 2 32 33];
Q{3,:}=[12 21 1 2;13 32 23 2;11 23 22 22;1 11 111 42;13 23 2 23];
.... and so on. now i want to move a row from Q{1,:}(1,:) into another cell like in Q{2,:} or Q{3,:} or Q{4,:} or Q{5,:} except Q{1,:} how can i do this ? thanks

Accepted Answer

Stephen23
Stephen23 on 7 Feb 2018
Edited: Stephen23 on 7 Feb 2018
Your data:
>> Q = cell(3,1);
>> Q{1} = [1,2,3,4;11,22,33,4;11,2,33,4];
>> Q{2} = [1,11,11,2;22,2,32,33];
>> Q{3} = [12,21,1,2;13,32,23,2;11,23,22,22;1,11,111,42;13,23,2,23];
MATLAB does not have a "move" operation, so you have to do this in two steps:
>> Q{2} = vertcat(Q{2},Q{1}(1,:)); % copy row from Q{1} to Q{2}
>> Q{1}(1,:) = []; % delete row from Q{1}
and checking:
>> size(Q{1})
ans =
2 4
>> size(Q{2})
ans =
3 4

More Answers (1)

ES
ES on 7 Feb 2018
>> Q{1,:}(1,:)
ans =
1 2 3 4
>> Q{2,:}(1,:) = Q{1,:}(1,:)% Do you simply mean this?
Q =
[3x4 double]
[2x4 double]
[5x4 double]
[]
[]
>> Q{2,:}(1,:)
ans =
1 2 3 4
  1 Comment
MUKESH KUMAR
MUKESH KUMAR on 7 Feb 2018
No, I want to move Q{1,:}(1,:) to Q{2,:} cell after that size of Q{2,:} will be [3*4 double] and size of Q{1,:} will be [2*4 double]

Sign in to comment.

Categories

Find more on Cell Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!