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.

 採用された回答

the cyclist
the cyclist 2014 年 4 月 29 日
編集済み: the cyclist 2014 年 4 月 29 日

12 投票

Two alternatives:
squeeze(A(7,8,:))
and
permute(A(7,8,:),[3 1 2])

3 件のコメント

Graham
Graham 2014 年 4 月 29 日
Thank you!
Gianmarco Venditti
Gianmarco Venditti 2023 年 10 月 19 日
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)
the cyclist
the cyclist 2023 年 10 月 19 日
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.

サインインしてコメントする。

その他の回答 (2 件)

ABHIJITH U V
ABHIJITH U V 2018 年 11 月 20 日

0 投票

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 ??
Giorgio Sperandio
Giorgio Sperandio 2020 年 6 月 18 日

0 投票

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

カテゴリ

ヘルプ センター および File Exchange で Matrix Indexing についてさらに検索

質問済み:

2014 年 4 月 29 日

コメント済み:

2023 年 10 月 19 日

Community Treasure Hunt

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

Start Hunting!

Translated by