separate x, y coordinate in a matrix into two different matrices
Show older comments
I have 18 by 18 matrix with each cell has [-1;1] [-1;1] etc.. I want to separate this matrix into two 18 by 18 matrices. The first matrix would only have the first row for example, -1,-1 and the second matrix would have the second column for example 1, 1.
2 Comments
Walter Roberson
on 5 Oct 2015
I am not clear on what the size is of each element of the cell array?
Ray
on 6 Oct 2015
Answers (3)
Walter Roberson
on 6 Oct 2015
x = cellfun(@(C) C(1), YourCell);
y = cellfun(@(C) C(2), YourCell);
Image Analyst
on 5 Oct 2015
Assuming it's a normal numerical matrix and not a cell array, try this:
firstRow = yourMatrix(1,:); % Extract first row.
secondRow = yourMatrix(2,:); % Extract second row.
2 Comments
Image Analyst
on 5 Oct 2015
Oh, sorry, you said you want the first row and the second column, not second row. To get the second column, you'd do this:
secondCol = yourMatrix(:, 2); % Extract second column.
Ray
on 6 Oct 2015
Andrei Bobrov
on 6 Oct 2015
cell2mat(cellfun(@(x)reshape(x,1,1,[]),C,'un',0))
Categories
Find more on Creating and Concatenating Matrices 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!