Removing Nans, converting matrix to vector
6 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi
I have 50 x 60 x 45 double arrays, from which I want to remove the Nans, and, which I then want to convert into a (row or column) vector. I realized that the following line should do this (let C be my array):
C(isnan(C)) = [];
is this correct at all? How comes that with this line the matrix is also converted to a vector? Also, are the linear indices of the original matrix used to create the order of the elements in the row vector?
Many thanks
0 commentaires
Réponses (1)
KSSV
le 29 Juin 2016
Let C be you matrix of 50X60X45 matrix
C = C(:) ; % convert to column vector
C(isnan(C)) = [] ; % remove NaNs
2 commentaires
KSSV
le 29 Juin 2016
If you use K(isnan(K)) = []; to a matrix, the output will be always an array. If you want a matrix again, then using find, get the indices of NaN and replace them by your number. Then the output will be a matrix of original size.
Voir également
Catégories
En savoir plus sur Data Type Conversion 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!