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 comentarios

Rik
Rik el 7 de Oct. de 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 el 7 de Oct. de 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 el 7 de Oct. de 2018
Editada: Lilya el 7 de Oct. de 2018
the final matrix should contains the specified result for each slice of the third column (10)
Lilya
Lilya el 7 de Oct. de 2018
@Rik Wisselink
I do appreciate your response. thanks a lot

Iniciar sesión para comentar.

 Respuesta aceptada

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

Más respuestas (0)

Categorías

Etiquetas

Preguntada:

el 7 de Oct. de 2018

Comentada:

el 7 de Oct. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by