How can I center a dataset with NaN values in it?

2 次查看(过去 30 天)
I know this sounds like an easy question. Really, it is. I've even asked some form of this question before. But, I have run into a new problem today. I have a 736x1 vector, called 'ARRAY4' which I am trying to center. The vector contains NaN values. The code I am using is:
ARRAY4c=bsxfun(@minus,ARRAY4,nansum(ARRAY4)/size(ARRAY4,1));
This code works fine with many other datasets, but for some reason it does not with this one. The output, rather than being centered around the average, is all positive values and NaNs. I have checked the original data several times manually to look for any anomalous values, but to no avail. What could possibly be happening here?
  2 个评论
Azzi Abdelmalek
Azzi Abdelmalek 2013-11-5
You said: but for some reason it does not with this one.
Which one?
Patrick
Patrick 2013-11-5
This one, as in this dataset, "ARRAY4". It has worked with my other datasets, "ARRAY1", "ARRAY2", "ARRAY3", which also contain NaN values.

请先登录,再进行评论。

采纳的回答

Patrick
Patrick 2013-11-6
As a different approach, I used:
nanmean(ARRAY4c)
to find the mean of the positive data, and centered it around that.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Language Fundamentals 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by