當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。