How to create a 2D array from the first column of a 3D array?

18 Ansichten (letzte 30 Tage)
belle
belle am 13 Jan. 2017
Beantwortet: Guillaume am 13 Jan. 2017
I have a 3D array of size(N,N,sz). I want to create a 2D array of size(N,sz) where the columns of the 2D array correspond to the first column from every sz-th array from the 3D array. I have tried the following but there is a "Subscripted assignment dimension mismatch" as an error:
2Darray=permute(3Darray,[1 3 2]);
2Darray=reshape(2Darray, [], size(3Darray,2),1);
for m=1:1:sz
2Darray(:,m)=3Darray(:,1,m)
end

Akzeptierte Antwort

Guillaume
Guillaume am 13 Jan. 2017
2Darray = squeeze(3DArray(:, 1, :));
%or
2Darray = permute(3DArray(:, 1, :), [1 3 2]);

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by