我在一个数据帧中有两个变量,称为关联性
代表:
这是我的自变量(X)
correlation["X"]
Out[35]:
0 0.362351
1 3.238616
2 2.602781
3 3.976034
4 1.961889
5 1.402206
6 0.580704
7 2.254004
8 0.866440
9 5.200244
10 1.339573
这是我的因变量或Y
correlation["Y"]
Out[36]:
0 333.65
1 0.00
2 1846.80
3 0.00
4 0.00
5 0.00
6 0.00
7 0.00
8 191.56
9 0.00
10 0.00
from numpy.random import randn
from scipy.stats import pearsonr
from numpy import corrcoef
from scipy.stats import spearmanr
data1 = correlation["X"]
data2 = correlation["Y"]
# calculate Pearson's correlation
corr, _ = pearsonr(data1, data2)
print('Pearsons correlation: %.3f' % corr)
但是,当我打印函数时,输出是:
print('Pearsons correlation: %.3f' % corr)
Pearsons correlation: **nan**
为什么会这样?
答案 0 :(得分:0)
好吧,我承认我对SciPy一无所知,但我希望数组应该具有相同数量的元素。从我的角度来看,X有35个,Y有36个,也许是一个问题(至少对于某些版本,正如沃伦在上面评论的那样对他有用)。