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!