How to compact an array with repeated data and NaNs?
Afficher commentaires plus anciens
Hi!
I have two vectors with measurement set points and an array with measurement values. The vectors and array contain repeated values and the array also contains NaNs. I would like to remove the repeated data and for the measurement set points where there are both a NaN and a value, I would like the value to remain.
For example, if the two vectors are called x and y and the array is called z.
x = [0 0.5 0.5 1 2]
y = [0 1 2 2 ]
z = [1 NaN 2 5 10; 7 3 3 NaN 2; 8 4 4 NaN NaN; 8 NaN 4 8 NaN]
I would like this to become
x = [0 0.5 1 2]
y = [0 1 2]
z = [1 2 5 10; 7 3 NaN 2; 8 4 8 NaN]
How do I do this in an easy way (I have quite a large array with data…)?
Thanks!
3 commentaires
James Tursa
le 25 Mar 2015
Modifié(e) : James Tursa
le 25 Mar 2015
So you want the unique values of x and y to remain, and then delete the corresponding column(s) and row(s) of z based on what got deleted from x and y, but do so in a way that replaces any NaN's with values if there was a non-NaN available for that spot?
Can we assume that x and y are sorted as in your example?
Konstantinos Sofos
le 25 Mar 2015
Modifié(e) : Konstantinos Sofos
le 25 Mar 2015
And what will happen in the case that all the values of a row are NaN or the dimensions are not consistent? In your example with Z matrix the output of the last row has 2 times the 8....
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Tables dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!