当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark Statistics.kolmogorovSmirnovTest用法及代码示例


本文简要介绍 pyspark.mllib.stat.Statistics.kolmogorovSmirnovTest 的用法。

用法:

static kolmogorovSmirnovTest(data, distName='norm', *params)

对从连续分布中采样的数据执行 Kolmogorov-Smirnov (KS) 检验。它测试数据是从特定分布生成的零假设。

对给定的数据进行排序并计算经验累积分布函数 (ECDF),对于给定点,该函数是 CDF 值小于它的点数除以总点数。

由于数据已排序,因此这是一个阶梯函数,每个排序点都会增加(1 /数据长度)。

KS 统计量为我们提供了 ECDF 和 CDF 之间的最大距离。直观地说,如果这个统计量很大,零假设为真的概率就会变小。有关实现的具体细节,请查看 Scala 文档。

参数

datapyspark.RDD

RDD,来自数据的样本

distNamestr,可选

字符串,目前仅支持“norm”。 (正态分布)计算数据的理论分布。

params

需要为特定分布提供的附加值。如果未提供,则使用默认值。

返回

pyspark.mllib.stat.KolmogorovSmirnovTestResult

包含检验统计量、自由度、p 值、使用的方法和原假设的对象。

例子

>>> kstest = Statistics.kolmogorovSmirnovTest
>>> data = sc.parallelize([-1.0, 0.0, 1.0])
>>> ksmodel = kstest(data, "norm")
>>> print(round(ksmodel.pValue, 3))
1.0
>>> print(round(ksmodel.statistic, 3))
0.175
>>> ksmodel.nullHypothesis
'Sample follows theoretical distribution'
>>> data = sc.parallelize([2.0, 3.0, 4.0])
>>> ksmodel = kstest(data, "norm", 3.0, 1.0)
>>> print(round(ksmodel.pValue, 3))
1.0
>>> print(round(ksmodel.statistic, 3))
0.175

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.mllib.stat.Statistics.kolmogorovSmirnovTest。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。