作者jing03 (境)
看板MATLAB
标题[问题]资料中有NaN要怎麽求相关系数
时间Mon Dec 10 21:20:44 2012
corrcoef这个指令不能算有NaN的
目前我只知道用cftool画回归线可以求
但感觉有点麻烦
我照着相关系数定义写了下列code
dX=X-nanmean(X);
dY=Y-nanmean(Y);
dXdY=nansum((dX).^2)*nansum((dY).^2);
corr=nansum(dX.*dY)/(dXdY)^0.5
r_squaure=corr^2
但算出来的值跟用cftool的差很多
请问我有哪里写错 或者有其他更好的方法吗?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.206
1F:→ gozelee:有试过isnan吗?? 12/10 23:04
2F:推 JamesChen:因为你 X Y NaN 的点不是样的点阿 12/11 13:02
3F:→ JamesChen:公式是假设没有任何 NaN 的状况 12/11 13:02
4F:→ JamesChen:你应该把所有 NaN 的点去掉 (X 或 Y 有 NaN 就去掉) 12/11 13:03
5F:→ jing03:虽然还是有点模糊 但谢谢指教! 12/11 16:21