I have a data structure which is 4 dimensional having dimensions of (9,1000,40,6). I have converted it to the following picture
Each of this 6 cells now has 1x40 data which looks as follows,
It goes from 1 to 40 each having 9X1000 size array. How can I convert this data to 40x9x1000?

 採用された回答

Stephen23
Stephen23 2018 年 4 月 23 日

1 投票

Why not just convert it to the correct shape in the first place?:
A = your 9x1000x40x6 array
C = squeeze(num2cell(permute(A,[3,1,2,4]),1:3))

3 件のコメント

Riddhi Gala
Riddhi Gala 2018 年 4 月 23 日
Thank you. I got what I wanted
Alex
Alex 2019 年 4 月 25 日
Hey I have a similar issue. I have a 4-D double (a 188x194x1x182 matirx, which is x,y,depth,time) the depth is 0 for all of them and I need to convert it to a 188x194x182 matrix. How can I do this in a similar way?
Stephen23
Stephen23 2019 年 4 月 26 日
@Alex: where A is your array:
A = permute(A,[1,2,4,3])

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

その他の回答 (2 件)

maria tamoor
maria tamoor 2018 年 11 月 2 日

0 投票

I have mri data in x,y,slice,frame how can i convert it into 3 d and just get x,y,slice
Abir Troudi
Abir Troudi 2019 年 10 月 2 日

0 投票

hey, i need to convert 4-D volume MRI to 3-D volume, any help please?

1 件のコメント

Tina
Tina 2021 年 11 月 14 日
Use squeeze command

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

カテゴリ

ヘルプ センター および File ExchangeNeuroimaging についてさらに検索

タグ

質問済み:

2018 年 4 月 23 日

コメント済み:

2021 年 11 月 14 日

Community Treasure Hunt

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

Start Hunting!

Translated by