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

Anderson-Darling正态性检验【重要统计工具】

Anderson-Darling正态性检验是一种用于确定数据集是否服从正态分布(也称为高斯分布或钟形曲线分布)的统计方法。它基于Anderson和Darling于1954年提出的检验统计量。该检验的基本原理和用途如下:

基本原理:

  1. 零假设(Null Hypothesis):Anderson-Darling检验的零假设是数据集来自于正态分布。这意味着,如果数据确实服从正态分布,则零假设成立。

  2. 计算Anderson-Darling统计量:检验首先计算Anderson-Darling统计量,这是一个衡量数据与正态分布拟合的度量。该统计量基于数据的观察值和正态分布的期望值之间的差异。

  3. 与临界值比较:接下来,Anderson-Darling统计量与临界值进行比较。临界值是根据所选的显著性水平(通常为5%)和数据集的大小计算得出的。如果Anderson-Darling统计量大于临界值,就意味着数据不太可能来自于正态分布。

  4. 做出决策:根据统计量与临界值的比较,可以决定是否拒绝零假设。如果统计量足够大,超过了临界值,通常会拒绝零假设,这意味着数据不服从正态分布。否则,不能拒绝零假设,这表示数据可能服从正态分布。

用途:

  1. 数据分布检查:Anderson-Darling检验可用于验证数据是否符合正态分布的假设。这对于许多统计分析和模型建立的前提非常重要,因为许多统计方法都要求数据服从正态分布。

  2. 质量控制:在制造业和质量控制中,Anderson-Darling检验可以用来检查生产过程是否产生了正态分布的输出。如果不是,可能需要采取措施来改进过程。

  3. 金融分析:在金融领域,正态分布假设经常用于分析资产价格变动。Anderson-Darling检验可以用来验证这种假设的有效性。

  4. 生物统计学:在生物统计学中,研究人员可能使用Anderson-Darling检验来确定生物数据是否遵循正态分布,例如基因表达数据或生物测量数据。

总之,Anderson-Darling正态性检验是一种重要的统计工具,可用于验证数据是否符合正态分布的假设,从而支持各种领域的分析和决策。

from scipy import stats
import numpy as np# 创建一个示例数据集
data = np.random.normal(0, 1, 100)# 执行Anderson-Darling正态性检验
result = stats.anderson(data)# 输出检验结果
print("Anderson-Darling统计量:", result.statistic)
print("临界值:", result.critical_values)
if result.statistic > result.critical_values[2]:print("数据不服从正态分布")
else:print("数据可能服从正态分布")print("--------------------------")
print("-检验的结果包括Anderson-Darling统计量、临界值、显著性水平以及适配结果,用于判断数据是否服从正态分布-")
print(result)
print(type(result))
print("--------------------------")
# Anderson-Darling统量
print("Anderson-Darling统计量:", result.statistic)# 临界值
print("临界值:", result.critical_values)# 显著性水平
print("显著性水平:", result.significance_level)# 适配结果
fit_result = result.fit_result
print("适配结果 params:", fit_result.params)
print("适配结果 success:", fit_result.success)
print("适配结果 message:", fit_result.message)

Anderson-Darling统计量: 0.8746794117758157
临界值: [0.555 0.632 0.759 0.885 1.053]
数据不服从正态分布
--------------------------
----检验的结果包括Anderson-Darling统计量、临界值、显著性水平以及适配结果,用于判断数据是否服从正态分布-----
AndersonResult(statistic=0.8746794117758157, critical_values=array([0.555, 0.632, 0.759, 0.885, 1.053]), significance_level=array([15. , 10. ,  5. ,  2.5,  1. ]), fit_result=  params: FitParams(loc=-0.00916569417046395, scale=1.012016300795819)
 success: True
 message: '`anderson` successfully fit the distribution to the data.')
<class 'scipy.stats._morestats.AndersonResult'>
--------------------------
Anderson-Darling统计量: 0.8746794117758157
临界值: [0.555 0.632 0.759 0.885 1.053]
显著性水平: [15.  10.   5.   2.5  1. ]
适配结果 params: FitParams(loc=-0.00916569417046395, scale=1.012016300795819)
适配结果 success: True
适配结果 message: `anderson` successfully fit the distribution to the data.
[Finished in 5.0s]

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

相关文章:

  • Ubuntu基于Docker快速配置GDAL的Python、C++环境
  • <C++> 哈希表模拟实现STL_unordered_set/map
  • 【数据结构与算法】通过双向链表和HashMap实现LRU缓存 详解
  • MySQL的内置函数
  • 数据结构与算法-(7)---栈的应用-(3)表达式转换
  • Lilliefors正态性检验(一种非参数统计方法)
  • 【云原生】配置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简介
  • 链表经典面试题(一)