Sort elements from multidimensional array into 2D array?

So I have a Multidimensional array S (115 x 90 x 64) and I need to form multple 64x1 arrays B. So for example, the first B is the first element in the 64 115x90 S array S(1,1,:). How would I go about doing this?

3 Commenti

So, you want to pick only diagonale elements? What should be second column of B?
Sorry for the confusion, what im trying to achieve is basically this:
i = 1:64
B1 = S(1,1,i)
B2 = S(2,1,i)
B3 = S(3,1,i)
.
.
.
Bn = S(115,90,i)
resulting in many B 64x1 arrays
So, we need a way to extract the 2D matrix along z-axis and then save them separately.
Refer the following link for similar query and you can follow up the solution provided there.
Instead of saving it in different .csv files, you can store them simply in a 2D array.

Accedi per commentare.

 Risposta accettata

S = rand(115, 90, 64) ;
B = squeeze(S(:,1,:)) ;
whos B
Name Size Bytes Class Attributes B 115x64 58880 double

3 Commenti

So there are 64 arrays composed of 115x90 elements, i need each element in every array stored into a different 64x1 array so i should end up with 115x90 B arrays composed of 64x1 elements.
S = rand(115, 90, 64) ;
iwant = cell(115,90) ;
for i = 1:115
for j = 1:90
iwant{i,j} = squeeze(S(i,j,:)) ;
end
end
yep that's done it, cheers

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Release

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by