当前位置: 首页 > news >正文

Lilliefors正态性检验(一种非参数统计方法)

Lilliefors检验(也称为Kolmogorov-Smirnov-Lilliefors检验)是一种用于检验数据是否符合正态分布的统计检验方法,它是Kolmogorov-Smirnov检验的一种变体,专门用于小样本情况。与K-S检验不同,Lilliefors检验不需要假定数据的分布类型,它基于观测数据来评估是否来自正态分布。

Lilliefors检验是一种用于检验数据是否符合正态分布的非参数统计方法。它的基本原理和步骤如下:

  1. 提出假设:Lilliefors检验的原假设是数据来自正态分布(正态性假设)。备择假设是数据不来自正态分布。

  2. 数据预处理:首先,对数据进行排序,然后计算每个数据点的累积分布函数(ECDF)值。ECDF表示每个数据点在样本中的相对位置。

  3. 计算统计量:Lilliefors检验的统计量是基于ECDF的最大绝对偏差。它衡量了ECDF与标准正态分布累积分布函数之间的最大差异。统计量的计算涉及数据点与标准正态分布值的比较。

  4. 计算p值:通过比较观察到的统计量与经过模拟或查找临界值得到的分布,计算得到一个p值。p值表示观察到的最大绝对偏差在原假设下的概率。

  5. 假设检验:根据p值和显著性水平(通常是0.05),决定是否拒绝原假设。如果p值小于显著性水平,则拒绝原假设,认为数据不服从正态分布;如果p值大于显著性水平,则接受原假设,认为数据可能服从正态分布。

与Kolmogorov-Smirnov检验相比,Lilliefors检验更适用于小样本情况,因为它考虑了样本量的影响,并使用了不同的临界值来进行检验。然而,对于较大的样本,通常建议使用其他正态性检验方法,如D'Agostino-Pearson检验。

总之,Lilliefors检验是一种有用的工具,特别适用于小样本情况下的正态性检验,它不要求假定数据的分布类型,并可以提供有关数据分布是否接近正态分布的信息。

import numpy as np
from scipy import stats
from statsmodels.stats.diagnostic import lilliefors# 创建示例数据
data = np.random.normal(loc=12, scale=1.8, size=60)# 执行Lilliefors检验
lilliefors_statistic, p_value = lilliefors(data)# 打印结果
print("Lilliefors统计量 =", lilliefors_statistic)
print("p值 (p) =", p_value)# 设置显著性水平
alpha = 0.05# 根据p值进行假设检验
if p_value < alpha:print("拒绝原假设:数据不服从正态分布")
else:print("接受原假设:数据服从正态分布")
import numpy as np
from statsmodels.stats.diagnostic import lilliefors# 创建一个示例数据集,可以是非正态分布
data_non_normal = np.random.exponential(scale=2, size=100)# 执行Lilliefors检验
lilliefors_statistic, p_value = lilliefors(data_non_normal)# 打印结果
print("Lilliefors统计量 =", lilliefors_statistic)
print("p值 (p) =", p_value)# 设置显著性水平
alpha = 0.05# 根据p值进行假设检验
if p_value < alpha:print("拒绝原假设:数据不服从正态分布")
else:print("接受原假设:数据服从正态分布")

http://www.lryc.cn/news/180141.html

相关文章:

  • 【云原生】配置Kubernetes CronJob自动备份MySQL数据库(单机版)
  • 基于PSO算法的功率角摆动曲线优化研究(Matlab代码实现)
  • 数论知识点总结(一)
  • 知识分享 钡铼网关功能介绍:使用SSLTLS 加密,保证MQTT通信安全
  • asp.net core mvc区域路由
  • KNN(下):数据分析 | 数据挖掘 | 十大算法之一
  • Servlet开发-session和cookie理解案例-登录页面
  • Polygon Miden:扩展以太坊功能集的ZK-optimized rollup
  • [题]宝物筛选 #单调队列优化
  • .NET的键盘Hook管理类,用于禁用键盘输入和切换
  • Anaconda Jupyter
  • Unity中Shader的前向渲染路径ForwardRenderingPath
  • 简历项目优化关键方法论-START
  • TensorFlow学习1:使用官方模型进行图片分类
  • C++ 并发编程实战 第八章 设计并发代码 一
  • 设计模式8、装饰者模式 Decorator
  • 抖音开放平台第三方代小程序开发,一整套流程
  • Flutter笔记:滚动之-无限滚动与动态加载的实现(GetX简单状态管理版)
  • 前端架构师之02_ES6_高级
  • VScode多文件编译/调试配置
  • K折交叉验证——cross_val_score函数使用说明
  • 2023.09.30使用golang1.18编译Hel10-Web/Databasetools的windows版
  • React简介
  • 链表经典面试题(一)
  • 体验亚马逊的 CodeWhisperer 感觉
  • 6、行内元素和块元素
  • LeetCode 面试题 08.01. 三步问题
  • [CSCCTF 2019 Qual]FlaskLight 过滤 url_for globals 绕过globals过滤
  • 1分钟快速实现Redis数据对比
  • ASUS华硕天选4笔记本电脑FX507VV原厂Windows11系统