How to compact an array with repeated data and NaNs?
显示 更早的评论
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 个评论
James Tursa
2015-3-25
编辑:James Tursa
2015-3-25
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
2015-3-25
编辑:Konstantinos Sofos
2015-3-25
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....
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 NaNs 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!