Extracting a vector from a 3d array

55 ビュー (過去 30 日間)
Graham
Graham 2014 年 4 月 29 日
コメント済み: the cyclist 2023 年 10 月 19 日
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 日
Two alternatives:
squeeze(A(7,8,:))
and
permute(A(7,8,:),[3 1 2])
  3 件のコメント
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 日
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 日
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

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by