本文简要介绍 python 语言中 scipy.stats.weightedtau
的用法。
用法:
scipy.stats.weightedtau(x, y, rank=True, weigher=None, additive=True)#
计算 Kendall 的 的加权版本。
加权 是 Kendall 的 的加权版本,其中高权重的交换比低权重的交换更有影响力。默认参数计算索引的加法双曲线版本 ,它已被证明可以在重要和不重要元素之间提供最佳平衡 [1]。
权重是通过一个秩数组定义的,它为每个元素分配一个非负秩(更高的重要性等级与较小的值相关联,例如,0 是可能的最高等级)和一个加权函数,它根据每个元素的排名。因此,交换的权重是交换元素的等级权重的总和或乘积。默认参数计算 :排名为 和 (从零开始)的元素之间的交换具有权重 。
仅当您考虑到外部重要性标准时,指定等级数组才有意义。如果像通常发生的那样,您没有考虑特定的排名,那么加权
是通过对使用递减的词典排序获得的值进行平均来定义的 (x,y) 和 (y,x)。这是默认参数的行为。请注意,此处用于排名的约定(较低的值意味着较高的重要性)与其他 SciPy 统计函数使用的约定相反。- x, y: array_like
相同形状的分数数组。如果数组不是一维的,它们将被展平为一维。
- rank: 数组 ints 或 bool,可选
分配给每个元素的非负排名。如果它是 None,将使用按 (x, y) 递减的字典顺序:排名较高的元素将是具有较大 x-values 的元素,使用 y-values 打破平局(特别是,交换 x 和 y 将给出结果不同)。如果为 False,则元素索引将直接用作排名。默认值为 True,在这种情况下,此函数返回使用由 (x, y) 和 (y, x) 递减的词典排序获得的值的平均值。
- weigher: 可调用的,可选的
称重函数。必须将非负整数(零表示最重要的元素)映射到非负权重。默认值 None 提供双曲线权重,即排名 映射到权重 。
- additive: 布尔型,可选
如果为 True,则通过将交换元素的排名权重相加来计算交换的权重;否则,权重相乘。默认值为真。
- 资源:SignificanceResult
包含属性的对象:
- 统计 浮点数
加权 相关 index 。
- p值 浮点数
目前
np.nan
,因为统计量的零分布未知(即使在加性双曲情况下)。
参数 ::
返回 ::
注意:
这个函数使用一个[1]这是 Kendall 的 Knight 算法的加权扩展 [2].它可以计算 Shieh 的加权 [3]通过设置在没有关系的排名(即排列)之间添加剂和秩为 False,如中给出的定义[1]是 Shieh 的概括。
, 基于归并排序的算法NaNs 被认为是可能的最小分数。
参考:
[1] (1,2,3)Sebastiano Vigna,“A weighted correlation index for rankings with ties”,第 24 届万维网国际会议论文集,第 1166-1176 页,ACM,2015 年。
[2]W.R. Knight,“用未分组数据计算 Kendall 的 Tau 的计算机方法”,美国统计协会杂志,第 1 卷。 61,第 314 期,第 1 部分,第 436-439 页,1966 年。
[3]格蕾丝·S·谢。 “加权 Kendall 的 tau 统计”,统计与概率快报,卷。 39,第 1 期,第 17-24 页,1998 年。
例子:
>>> import numpy as np >>> from scipy import stats >>> x = [12, 2, 1, 12, 2] >>> y = [1, 4, 7, 1, 0] >>> res = stats.weightedtau(x, y) >>> res.statistic -0.56694968153682723 >>> res.pvalue nan >>> res = stats.weightedtau(x, y, additive=False) >>> res.statistic -0.62205716951801038
NaNs 被认为是可能的最小分数:
>>> x = [12, 2, 1, 12, 2] >>> y = [1, 4, 7, 1, np.nan] >>> res = stats.weightedtau(x, y) >>> res.statistic -0.56694968153682723
这正是 Kendall 的 tau:
>>> x = [12, 2, 1, 12, 2] >>> y = [1, 4, 7, 1, 0] >>> res = stats.weightedtau(x, y, weigher=lambda x: 1) >>> res.statistic -0.47140452079103173
>>> x = [12, 2, 1, 12, 2] >>> y = [1, 4, 7, 1, 0] >>> stats.weightedtau(x, y, rank=None) SignificanceResult(statistic=-0.4157652301037516, pvalue=nan) >>> stats.weightedtau(y, x, rank=None) SignificanceResult(statistic=-0.7181341329699028, pvalue=nan)
相关用法
- Python SciPy stats.weibull_min用法及代码示例
- Python SciPy stats.weibull_max用法及代码示例
- Python SciPy stats.wilcoxon用法及代码示例
- Python SciPy stats.wrapcauchy用法及代码示例
- Python SciPy stats.wasserstein_distance用法及代码示例
- Python SciPy stats.wishart用法及代码示例
- Python SciPy stats.wald用法及代码示例
- Python SciPy stats.anderson用法及代码示例
- Python SciPy stats.iqr用法及代码示例
- Python SciPy stats.genpareto用法及代码示例
- Python SciPy stats.skewnorm用法及代码示例
- Python SciPy stats.cosine用法及代码示例
- Python SciPy stats.norminvgauss用法及代码示例
- Python SciPy stats.directional_stats用法及代码示例
- Python SciPy stats.invwishart用法及代码示例
- Python SciPy stats.bartlett用法及代码示例
- Python SciPy stats.levy_stable用法及代码示例
- Python SciPy stats.page_trend_test用法及代码示例
- Python SciPy stats.itemfreq用法及代码示例
- Python SciPy stats.exponpow用法及代码示例
- Python SciPy stats.gumbel_l用法及代码示例
- Python SciPy stats.chisquare用法及代码示例
- Python SciPy stats.semicircular用法及代码示例
- Python SciPy stats.gzscore用法及代码示例
- Python SciPy stats.gompertz用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.stats.weightedtau。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。