how to do the data extraction data from a 3D matrix

Hi all,
I have a 3D matrix with a dimension of (251*28*10) that I want to extract a specific data from it. As the extracted data are not in the same dimension, the empty values should be NaNs the used loop is
for i = 1:10
for j = 1:28
density(:,:,i) = find(density_1000(:,j,i)>= 27.5 & density_1000(:,j,i)<=28);
den = density_1000 (density); % this should be the finle matrix of the extracted data (251*28*10)
end
end
Any help will be appreciated.
Thanks

4 commentaires

Rik
Rik le 7 Oct 2018
Does the loop work for you? Or do you want to store NaN values to all positions with values outside of the range?
Lilya
Lilya le 7 Oct 2018
I want to extract the data and put it in a matrix that the filled with nan values. as the original data is gridded so, I don't want to lose the order. this why I created the nan matrix then I want to store the extracted data in it that also should corresponding to the index.
Lilya
Lilya le 7 Oct 2018
Modifié(e) : Lilya le 7 Oct 2018
the final matrix should contains the specified result for each slice of the third column (10)
Lilya
Lilya le 7 Oct 2018
@Rik Wisselink
I do appreciate your response. thanks a lot

Connectez-vous pour commenter.

 Réponse acceptée

mask = density_1000 >= 27.5 & density_1000 <= 28;
den = density_1000;
den(~mask) = nan;

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by