Polyfit和pearsonr随机数据产生显着的p值

时间:2014-07-28 21:13:01

标签: random machine-learning ipython correlation curve-fitting

在IPython中运行此代码我预计除了预期的机会水平之外,不会生成spearmanr / pearsonr的重要p值,但是在每第6或第7次运行时,我得到非常高的显着性值,如1e-20。

我试图根据各种类型的多项式配件 jackknife 输出推断值,但这个例子展示了我面临的问题的核心。由于new_pairs中的每个值都是采用留一法的方法计算出来的,因为我没有看到这个例子,因为我没有看到这样的例子,因为我对于像polyfit这样的随机数据有重要意义,因为它是完全丢失的。给出随机数据,首先要学习。

import scipy.stats

x=numpy.random.randn(50)
y=numpy.random.randn(50)
pairs = zip(x,y)
new_pairs = []

for p_i,p in enumerate(pairs):
        train_pair = pairs[:p_i] + pairs[p_i+1:]
        nx,ny = zip(*train_pair)
        tx,ty = pairs[p_i]
        m_l = poly1d(polyfit(nx,ny,1))
        new_pairs.append( (m_l(tx),ty) )

v,w = zip(*new_pairs)
#scatter(v,w,c='green',s=70)
print scipy.stats.spearmanr( v,w )

0 个答案:

没有答案