斯皮尔曼spearman

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import pandas as pd
import numpy as np

#原始数据
X1=pd.Series([1, 2, 3, 4, 5, 6])
Y1=pd.Series([0.3, 0.9, 2.7, 2, 3.5, 5])



def spearman(x1, y1):
return(x1.corr(y1,method='spearman'))

print(spearman(X1,Y1))

#处理数据删除Nan
# x1=X1.dropna()
# y1=Y1.dropna()
# n=x1.count()
# x1.index=np.arange(n)
# y1.index=np.arange(n)

# #分部计算
# d=(x1.sort_values().index-y1.sort_values().index)**2
# dd=d.to_series().sum()

# p=1-n*dd/(n*(n**2-1))

# #s.corr()函数计算
r=x1.corr(y1,method='spearman')
print(r) #0.942857142857143 0.9428571428571428