Extracting a vector from a 3d array

Hi, I have a 3d array called 'A' of size (l,m,n)=12x15x3648.
I want to extract all 3648 values for a given index (l,m) as a single column vector. Doing A(7,8,:) for example outputs many individual answers and is not useful. I would like them in a vector which is 3648 elements long.
Any help is appreciated. Thanks.

 Accepted Answer

the cyclist
the cyclist on 29 Apr 2014
Edited: the cyclist on 29 Apr 2014
Two alternatives:
squeeze(A(7,8,:))
and
permute(A(7,8,:),[3 1 2])

3 Comments

Thank you!
Why doing something like:
X = A(:,7,8) you have vector ( a one index object)
while
X = A(7,8,:) produce a 4-D tensor? (Still have 4 index)
Can you upload an example of an array A where you see that happening? You can attach a MAT file using the paper clip icon in the INSERT section of the toolbar.

Sign in to comment.

More Answers (2)

ABHIJITH U V
ABHIJITH U V on 20 Nov 2018
Hello
I would like to extract all the values 468 from a 3 d - array of size (2,2,468) into a vector. How to do this ??
Very interesting,
Would it be possible to loop the squeeze function in order to obtain the 3648 values from all the l,m indexes?
Thanks

Asked:

on 29 Apr 2014

Commented:

on 19 Oct 2023

Community Treasure Hunt

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

Start Hunting!