Extracting a column vector from a 3D matrix

Hi
I have a 3D matrix (A) with dimension of (10,10,320).
If I label the column vectors(320,1) with 1 - 100, I will get 100 column vectors with dimension of (320,1).
My question is that if there is a way to extract or find out one specific column vector from the 3D matrix if I have the index number between 1 and 100.
For example, if I know the index number is 10, I will look for the elements which situate at (10,1,:) of the 3D matrix (A). But is there a way to ask MATLAB to do it?
Thank you very much
Tommy

 Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 18 Mär. 2014
Bearbeitet: Andrei Bobrov am 18 Mär. 2014

2 Stimmen

l = 10;
s = size(A);
[ii,jj] = ind2sub(s(1:2),l);
out = A(ii,jj,:);
other way
C = zeros(size(A));
C(l) = 1;
out = A(cumsum(C,3) > 0);

1 Kommentar

Tommy
Tommy am 18 Mär. 2014
Hi Andrei
Thank you very much for your help.
This works perfectly.
Thanks
Tommy

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Gefragt:

am 18 Mär. 2014

Kommentiert:

am 18 Mär. 2014

Community Treasure Hunt

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

Start Hunting!

Translated by