Python快速检验数据分布

这篇具有很好参考价值的文章主要介绍了Python快速检验数据分布。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

假设检验的前提是确定数据的分布,本文介绍Python检验数据样本是否服从一定分布。使用方法是柯尔莫可洛夫-斯米洛夫检验(Kolmogorov–Smirnov test,K-S test),K-S检验方法适用于探索连续型随机变量的分布,对于离散分布(二项分布和泊松分布)需要使用其他方法进行检验。

KS检验语法

K-S检验方法能够利用样本数据推断样本来自的总体是否服从某一理论分布,是一种拟合优度的检验方法,这里使用scipy.stats.kstest() 实现单样本检测, scipy.stats.ks_2samp() 实现双样本检测。下面通过两个示例进行说明。

单样本检测

首先生成测试样本数据:

from numpy.random import seed
from numpy.random import poisson

#set seed (e.g. make this example reproducible)
seed(0)

# generate dataset of 100 values that follow a Poisson distribution with mean=5
data = poisson(5, 100)

下面代码显示如何执行KS检验,检验data数据集是否符合正太分布。

from scipy.stats import kstest

# perform Kolmogorov-Smirnov test
kstest(data, 'norm')

# 输出结果
# KstestResult(statistic=0.9072498680518208, pvalue=1.0908062873170218e-103)

从输出可以看到,检验统计量为0.9072,对应的p值为1.0908e-103,既然P值小于0.05,我们拒绝原假设,有足够证据说明样本不服从正太分布。因为我们使用poisson() 函数生成数据,样本数据应该服从泊松分布。

除了正太分布,还可以检测分布,如指数分布、伽马分布、韦伯分布、T分布、F分布等。

双样本KS检验

首先我们生成两个不同分布的样本数据:

from numpy.random import seed
from numpy.random import randn
from numpy.random import lognormal

#set seed (e.g. make this example reproducible)
seed(0)

#generate two datasets
data1 = randn(100)
data2 = lognormal(3, 1, 100)

下面代码执行KS检验,判断两个样本是否来自同一分布:

from scipy.stats import ks_2samp

#perform Kolmogorov-Smirnov test
ks_2samp(data1, data2)

# 输出结果
# KstestResult(statistic=0.99, pvalue=4.417521386399011e-57)

由输出可知,检验统计量为0.99,对应的p值为4.4175e-57。由于p值小于0.05,我们拒绝原假设。我们有足够的证据表明,这两个样本数据集不是来自同一个分布。

这个结果也不应该令人惊讶,因为我们使用标准正态分布为第一个样本生成值,使用对数正态分布为第二个样本生成值。

总结

本文介绍了如何利用python进行数据分布检验。参考内容:How to Perform a Kolmogorov-Smirnov Test in Python - Statology,官网文档:scipy.stats.kstest — SciPy v1.11.2 Manual,通过官方文档可以进一步学习其他参数的,实现更多数据检验能力。文章来源地址https://www.toymoban.com/news/detail-669026.html

到了这里,关于Python快速检验数据分布的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 机器学习实战:Python基于KDE核密度估计进行分布估计(十六)

    1.1 KDE简介 核密度估计( Kernel Density Estimation ,简称 KDE )是用于估计连续随机变量概率密度函数的非参数方法。它的工作原理是在每个数据点周围放置一个“ 核 ”(通常是某种平滑的、对称的函数),然后将这些核加起来,形成一个整体的估计。这可以被视为对直方图的平

    2024年02月07日
    浏览(34)
  • Java开发者的Python快速进修指南:掌握T检验

    T检验是一种用于比较两个独立样本均值差异的统计方法。它通过计算T值和P值来判断样本之间是否存在显著性差异。通常情况下,我们会有两组数据,例如一组实验组和一组对照组。 T检验的原假设是两组样本的均值相等,备假设是两组样本的均值不相等。T检验会计算一个

    2024年03月09日
    浏览(66)
  • 机器学习洞察 | 分布式训练让机器学习更加快速准确

    机器学习能够基于数据发现一般化规律的优势日益突显,我们看到有越来越多的开发者关注如何训练出更快速、更准确的机器学习模型,而分布式训练 (Distributed Training) 则能够大幅加速这一进程。 亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档

    2024年02月16日
    浏览(48)
  • 机器学习:基于PCA对人脸识别数据降维并建立KNN模型检验

    作者:i阿极 作者简介:Python领域新星作者、多项比赛获奖者:博主个人首页 😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍 📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪 大家好,我

    2024年02月01日
    浏览(40)
  • python数据分析-概率论与数理统计基础

    大家好,今天我们用python语言去实现概率论与数理统计的一些基础计算等。常用第三方SciPy库、NumPy库来实现概率论和数理统计的计算。 SciPy是一个基于Python的开源库,是一组专门解决科学计算中各种基本问题的模块的集合,经常与NumPy、StatsModels、SymPy这些库一起使用。SciPy的

    2024年02月07日
    浏览(57)
  • 概率论的学习和整理15: 超几何分布,二项分布,泊松分布是如何趋近收敛的?

    目录 1 问题: 2 结论 3 实验1  4 实验2  5 实验3  6 实验4 5 各种规律总结 5.1   1  5.2  2 5.3  3 5.4 4 6 超几何分布,二项分布,泊松分布,三者用EXCEL模拟 6.1 简单的扩展到泊松分布 6.2  比较整体的动态过程,增加实验次数时 从一个简单模型说开去 比如,有10个球,其中有x个

    2024年02月16日
    浏览(38)
  • 概率论的学习和整理16: 泊松分布(未完成)

    目录 简单的扩展到泊松分布  比较整体的动态过程,增加实验次数时 当二项分布,n很大,p很小的时候,会趋向泊松分布 当n足够大时,二项分布趋向于正态分布。这个结论在概率论中被称为中心极限定理,它是概率论中一个非常重要的定理,广泛应用于各种领域,如金融、

    2024年02月16日
    浏览(43)
  • Python机器学习实验 Python 数据分析

    掌握常见数据预处理方法,熟练运用数据分析方法,并掌握 Python 中的 Numpy、 Pandas 模块提供的数据分析方法。 1.   P a nd a s   基本数据处理 使用 Pandas 模块,完成以下操作。 (1)创建一个由 0 到 50 之间的整数组成的 10 行 5 列的 dataframe。如下: (2)汇总每一列的

    2024年04月09日
    浏览(40)
  • 概率论的学习和整理9:超几何分布 (未完成!!!)

    目录 1超几何分布 Hypergeometric distribution          1.1 超几何分布的定义 1.2 为什么叫超几何分布  1.3 超几何分布的公式  (2种公式) 1.3.1 超几何分布的公式1 (总体型公式) 1.3.2 超几何分布的公式2 (拆分型公式) 1.4 超几何分布的分布图 2 超几何分布的期望和方差 3 超几

    2024年02月13日
    浏览(36)
  • 概率论的学习和整理11:伯努利试验对应分布:0-1分支, 二项分布 (未修改完成!!!)

    目录 1 伯努利试验 1.1 什么是伯努利试验 1.2 伯努利试验相关的3种分布 2 关于0-1分布 (也称为伯努利分布   ab分布  两点分布等) 2.1 0-1分布的基本概率和公式 2.2 0-1分布的概率分布图,pdf 和 cdf 2.3 0-1分布的期望和方差                  3  几何分布 3.1 什么是几何分布 4 二

    2024年02月13日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包