scipy.stats.mstats.

spearmanr#

scipy.stats.mstats.spearmanr(x, y=None, use_ties=True, axis=None, nan_policy='propagate', alternative='two-sided')[source]#

Spearman 秩相关系数和用于检验非相关性的 p 值。

Spearman 相关是一种非参数量度,用于衡量两组数据集之间的线性关系。与 Pearson 相关不同的是,Spearman 相关不要求两个数据集都服从正态分布。与其他相关系数类似,该系数在 -1 和 +1 之间变化,0 表示无相关性。相关系数为 -1 或 +1 表示单调关系。正相关表示随着 x 增加,y 也会增加。负相关表示随着 x 增加,y 会减少。

成对地舍弃缺失值:如果 x 中存在缺失值,则 y 中对应的值将被屏蔽。

p 值大致表示一个不相关系统生成数据集的概率,该数据的斯皮尔曼相关性至少与从这些数据集中计算出的相关性一样极端。p 值并不完全可靠,但对于超过 500 个数据集而言可能合理。

参数:
x、y1D 或 2D 阵列类似,y 是可选的

包含多个变量和观察值的一个或两个 1-D 或 2-D 数组。当它们为 1-D 时,每个数组表示单个变量的观测值向量。有关 2-D 情况下的行为,请参见下文的 axis

use_tiesbool,可选

不要使用。不会执行任何操作,仅保留关键字以实现向后兼容性。

axisint 或 None,可选

如果 axis = 0(默认),则每列表示一个变量,观察值位于行中。如果 axis = 1,则关系转置:每行表示一个变量,而列包含观测值。如果 axis = None,则会展开两个数组。

nan_policy{‘propagate’、‘raise’、‘omit’},可选

定义当输入包含 nan 时如何处理。‘propagate’返回 nan,‘raise’引发错误,‘omit’在计算中忽略 nan 值。默认值为 ‘propagate’。

alternative{‘two-sided’、‘less’、‘greater’},可选

定义备选假设。默认值为 ‘two-sided’。可以使用以下选项

  • ‘two-sided’:相关性不为零

  • ‘less’:相关性为负(小于零)

  • ‘greater’:相关性为正(大于零)

在 1.7.0 版本中添加。

返回:
resSignificanceResult

包含属性的对象

statisticfloat 或 ndarray(2-D 平方)

斯皮尔曼相关性矩阵或相关性系数(如果仅将 2 个变量作为参数给出时)。相关性矩阵为平方,长度等于 ab 组合中的变量总数(列或行)。

pvaluefloat

假设检验的 p 值,其零假设是两组数据线性不相关。有关备选假设,请参见上文的 alternativepvaluestatistic 具有相同的形状。

参考

[CRCProbStat2000] 第 14.7 节