pandas.DataFrame.corr#

DataFrame.corr(method='pearson', min_periods=1, numeric_only=True)[源代码]#

计算列的成对关联,不包括NA/NULL值。

参数
method{‘Pearson’,‘Kendall’,‘Spearman’}或可调用

对比方法:

  • 皮尔逊:标准相关系数

  • Kendall:Kendall Tau相关系数

  • 斯皮尔曼:斯皮尔曼等级相关

  • 可调用:可通过输入两条一维雷达进行调用

    并返回一个浮点数。请注意,从corr返回的矩阵沿对角线将有1,并且无论可调用对象的行为如何,该矩阵都将是对称的。

min_periods整型,可选

每对列获得有效结果所需的最小观测数。目前仅适用于皮尔逊和斯皮尔曼关联公司。

numeric_only布尔值,默认为True

仅包括 floatintboolean 数据。

1.5.0 新版功能.

退货
DataFrame

相关矩阵。

参见

DataFrame.corrwith

计算与另一个DataFrame或系列的成对关联。

Series.corr

计算两个系列之间的相关性。

注意事项

皮尔逊、肯德尔和斯皮尔曼相关性目前是使用成对的完全观测来计算的。

示例

>>> def histogram_intersection(a, b):
...     v = np.minimum(a, b).sum().round(decimals=1)
...     return v
>>> df = pd.DataFrame([(.2, .3), (.0, .6), (.6, .0), (.2, .1)],
...                   columns=['dogs', 'cats'])
>>> df.corr(method=histogram_intersection)
      dogs  cats
dogs   1.0   0.3
cats   0.3   1.0
>>> df = pd.DataFrame([(1, 1), (2, np.nan), (np.nan, 3), (4, 4)],
...                   columns=['dogs', 'cats'])
>>> df.corr(min_periods=3)
      dogs  cats
dogs   1.0   NaN
cats   NaN   1.0