Azzera filtri
Azzera filtri

array to cell array

3 visualizzazioni (ultimi 30 giorni)
Mingde
Mingde il 18 Lug 2022
Commentato: Image Analyst il 19 Lug 2022
Hello
I have many of array.
do you have any function for instead this CY.
CY = [cy(:,:,1) cy(:,:,2) cy(:,:,3) cy(:,:,4) cy(:,:,5) cy(:,:,6) cy(:,:,7) cy(:,:,8) cy(:,:,9) cy(:,:,10) cy(:,:,11) cy(:,:,12) cy(:,:,13) cy(:,:,14) cy(:,:,15) cy(:,:,16) cy(:,:,17) cy(:,:,18) cy(:,:,19) cy(:,:,20) cy(:,:,21) cy(:,:,22) cy(:,:,23) cy(:,:,24) cy(:,:,25) cy(:,:,26) cy(:,:,27) ... cy(:,:,3000];

Risposta accettata

Hayden Raabe-Garmon
Hayden Raabe-Garmon il 18 Lug 2022
Modificato: Hayden Raabe-Garmon il 18 Lug 2022
cy(:,:,1)=1
cy(:,:,2)=2
cy(:,:,3)=3
CY=squeeze(cy)'
CY =
1 2 3
  3 Commenti
Mingde
Mingde il 18 Lug 2022
Thank you
Mingde
Mingde il 18 Lug 2022
Thank you. it is working.

Accedi per commentare.

Più risposte (1)

Image Analyst
Image Analyst il 18 Lug 2022
Trust me, you don't want a cell array. I highly doubt it. It uses way more memory and is inefficient. You want code like @Hayden Raabe-Garmon gave you
CY=squeeze(cy)'
If you think you want a cell array, give justification (so I can talk you out of it).
  3 Commenti
Mingde
Mingde il 19 Lug 2022
Modificato: Mingde il 19 Lug 2022
cy(:,:,1)=1
cy(:,:,2)=2
cy(:,:,3)=3
cy(:,:,4)=4
cy(:,:,5)=5
cy(:,:,6)=6
cy(:,:,7)=7
cy(:,:,8)=8
cy(:,:,9)=9
...
cy(:,:,100)=100
How Can I use loop for mean each 3 cell array?
For example
mean(A)
cy(:,:,1)=1
cy(:,:,2)=2
cy(:,:,3)=3
mean(B)
cy(:,:,4)=4
cy(:,:,5)=5
cy(:,:,6)=6
...
mean(Z)
cy(:,:,98)=98
cy(:,:,99)=99
cy(:,:,100)=100
Image Analyst
Image Analyst il 19 Lug 2022
Again, we're not using cell arrays. And I don't know what range A, B, etc. cover. Do you just want the average of every group of 3 planes/slices? Like
A = cy(:, :, 1:3);
theMean = mean(A, 'all');

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by