how to extract data after squeeze the matrix?

조회 수: 4 (최근 30일)
Muaaz Badrul
Muaaz Badrul 2019년 10월 14일
댓글: Adam 2019년 10월 14일
i have 3D data that will be squeezed to 2D data matrix. the data is 116x150x45 where after the squeeze, i want to take out sample 1-25 only,
thus, Y should have 25 for Y(1) until Y(25), but i only got Y that will extract and replace after squeezing. anyone can help?
for a = 1:25
Y=squeeze(fmridata(:,:,a)); % for healthy patients from 1-25
end
  댓글 수: 3
Muaaz Badrul
Muaaz Badrul 2019년 10월 14일
but the data will still be in 3D right? or it will be converted into 2D matrix?
Adam
Adam 2019년 10월 14일
It will still be stored in 3d yes. But how it is stored in a variable doesn't really matter. It's what you do with it from there that matters.

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

채택된 답변

Rik
Rik 2019년 10월 14일
Something like this is probably what you're looking for, although it makes it more difficult to compare the same pixel over all patients.
Y=cell(1,25);
for a = 1:25
Y{a}=squeeze(fmridata(:,:,a)); % for healthy patients from 1-25
end
  댓글 수: 4
Rik
Rik 2019년 10월 14일
My code will result in a cell array with 25 elements, where each cell contains a matrix of 116x150. This avoids numbered variables, which are a bad idea in general.
As indicated by others: The squeeze is not needed, and a 3D array is probably a better idea, depending on what you want to do next with this array.
Muaaz Badrul
Muaaz Badrul 2019년 10월 14일
okay thanks for your help.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Matrices and Arrays에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by