How remove NaN values in all Matrices in Cell

1 vue (au cours des 30 derniers jours)
Robin
Robin le 8 Août 2017
Commenté : Robin le 8 Août 2017
I have a cell like:
c{1}= [1 1 1;
2 2 2;
3 3 3;
N N N;
N N N]
c{2}= [1 1 1;
100 2 2;
200 3 3;
300 4 5;
N N N]
N stands for NaN
Where the matrix in each cell has the same size but the amount of NaN values vary. Is there like a fancy vectorizing function using cellfun or maybe even a loop solution? The matrices are gpu arrays! I tried heaps of solutions but i couldnt find a working one. If this is duplicate im sorry!
kindly regards robin
  1 commentaire
José-Luis
José-Luis le 8 Août 2017
Will the entire row always consist of NaNs? If not, how do you want to do the removal?

Connectez-vous pour commenter.

Réponse acceptée

José-Luis
José-Luis le 8 Août 2017
Modifié(e) : José-Luis le 8 Août 2017
This will get rid of the entire row if there is a NaN:
c{1}= [1 1 1;
2 2 2;
3 3 3;
NaN NaN NaN;
NaN NaN NaN];
c{2}= [1 1 1;
100 2 2;
200 3 3;
300 4 5;
NaN NaN NaN]
cellfun(@(x) {x(sum(~isnan(x),2)>0,:)},c)

Plus de réponses (0)

Catégories

En savoir plus sur Matrices and Arrays 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!

Translated by