# Reduce Matrix Dimensions for 5D-Data

조회 수: 8(최근 30일)
Matthias Saurer 2021년 1월 27일
댓글: Matthias Saurer 2021년 1월 31일
Lets say we have a 5D-Matrix M and want to convert it to 4D-matrix M' in a way such that we combine dim1 and dim3 into a new dim1':
Or more mathematically (hopefully this notation is understandable):
M'(:,m,n,p) = M(:,m,:,n,p) for all m,n,p.
Obviously we could use loops for that, but im looking for a more elegant way, maybe we could make clever use of sub2ind?
##### 댓글 수: 2표시숨기기 이전 댓글 수: 1
Matthias Saurer 2021년 1월 31일
You were absoluteley rigth, and permute was the last piece of the puzzle. Thanks for your help, Mara

댓글을 달려면 로그인하십시오.

### 채택된 답변

You can make use of the functions permute and reshape as follows:
% M is a matrix of size a x b x c x d x e
Mp = permute(M,[1 3 2 4 5]);
Md = reshape(Mp,[],b,d,e);
##### 댓글 수: 1표시숨기기 없음
Matthias Saurer 2021년 1월 31일
Nice and simple, thank you Sir!

댓글을 달려면 로그인하십시오.

### Community Treasure Hunt

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

Start Hunting!

Translated by