How to remove NaN from matrix / remove the dark blue pixels in the ocean
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Jianne Pamintuan
le 1 Déc 2022
Commenté : Jianne Pamintuan
le 1 Déc 2022
Hello everyone,
I have a rainfall plot and the dataset was acquired from APHRODITE. NaN values are located in the ocean regions/basins which is represented by dark blue pixels outside the administrative boundary in the image. Is there a way to completely remove them? Attached here are the plot itself and the matrix. I have tried 'isnan' and 'isinfinite' but none of them work.
Your help is greatly appreciated. Thank you!
0 commentaires
Réponse acceptée
Matt J
le 1 Déc 2022
Modifié(e) : Matt J
le 1 Déc 2022
You can't remove the NaNs and keep the original rectangular shape of the matrix without replacing the NaNs with another value, e.g.,
yourMatrix(isnan(yourMatrix)) = 0;
If you don't care about keeping the original rectangular shape, you can just do,
yourMatrix(isnan(yourMatrix)) = [];
3 commentaires
Matt J
le 1 Déc 2022
There's no way they both return the same output, as seen below:
a=rand(5)>0.5;
yourMatrix=rand(5).*(a./a)
A=yourMatrix;
A(isnan(A)) = 0
B=yourMatrix;
B(isnan(B)) = []
Plus de réponses (2)
Walter Roberson
le 1 Déc 2022
I suggest you experiment with @John D'Errico FEX contribution https://www.mathworks.com/matlabcentral/fileexchange/4551-inpaint_nans
0 commentaires
Voir également
Catégories
En savoir plus sur NetCDF dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!