excel统计分析——S-W正态性检验

2023-12-25 15:12

本文主要是介绍excel统计分析——S-W正态性检验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

参考资料:

[1]马兴华,张晋昕.数值变量正态性检验常用方法的对比[J].循证医学,2014,14(02):123-128.

统计推断——正态性检验(图形方法、偏度和峰度、统计(拟合优度)检验)_sm.distributions.ecdf-CSDN博客

【统计学】利用spss正态分布假定检验 S-W检验 K-S检验 直方图 Q-Q图

https://real-statistics.com/tests-normality-and-symmetry/statistical-tests-normality-symmetry/shapiro-wilk-test/

https://real-statistics.com/tests-normality-and-symmetry/statistical-tests-normality-symmetry/shapiro-wilk-expanded-test/

       S-W正态性检验法由Shapiro和Wilk1965年提出的,又称W检验。使用原始的S-W检验,在8≤n≤50时可以利用,小样本(n<8)对偏离正态分布的检验不太有效。不幸的是,针对大多数n统计量W的分布是未知的,必须通过模拟,造表或者近似方法获得。

       而J. P. Royston就是通过近似的方法改进了S-W方法,对样本量的要求为12≤n≤5000,甚至更多;但建议样本量不低于20;该方法被用在了很多软件中(如SAS和SPSS)。

原始版S-W检验,具体步骤如下:

1、将n个样本观测值按由小到大的次序排序。

2、计算S-W正态性检验统计量。

W=\frac{b^{2}}{SS}=\frac{(\sum_{i=1}^{m}a_{i}(x_{n+1-i}-x_{i}))^{2}}{\sum_{i=1}^{n}(x_{i}-\bar{x})^{2}}

其中,当n为偶数时,m=n/2;当n为奇数时,m=(n-1)/2。

3、根据给定的检验水平α和样本容量n计算统计量W的临界值W_{\alpha}

4、做出统计判断。若W<W_{\alpha},则认为样本数据所来自的总体不服从正态分布;若W>W_{\alpha},则认为服从正态分布。

上述中的a_{i}W_{\alpha}均为查表所得。

excel实现步骤如下:

注:已提前将需要查表的信息放到excel中,信息来源参考https://real-statistics.com/statistics-tables/shapiro-wilk-table/

Royston的改进版S-W方法:

1、将n个样本观测值按由小到大的次序排序。

2、利用excel统计分析——Q-Q图_excel 分位数图-CSDN博客中介绍的累计分布函数,取CDF=\frac{k-0.375}{n+0.25},获得n个数据对应累计概率值。

3、利用标准正态分布的概率密度函数的反函数,对得到的CDF进行计算,记作m_{i}(i=1...n)。

4、对m_{i}的平方求和,m=\sum_{i=1}^{n}m_{i}^{2}

5、系数a_{i},取u=1/\sqrt{n}

a_{n}=-2.706056u^{5}+4.434685u^{4}-2.071190u^{3}-0.147981u^{2}+0.221157u+m_{n}m^{-0.5}

a_{n-1}=-3.582633u^{5}+5.682633u^{4}-1.752461u^{3}-0.293762u^{2}+0.042981u+m_{n-1}m^{-0.5}

a_{i}=m_{i}/\sqrt{\epsilon } ,其中,2<i<n-1,\epsilon =\frac{m-2m_{n}^{2}-2m_{n-1}^{2}}{1-2a_{n}^{2}-2a_{n-1}^{2}}

a_{2}=-a_{n-1}

a_{1}=-a_{n}

系数a_{i}之间的关系为:\sum_{i=1}^{n}a_{i}^{2}=1

6、计算统计量:

W=\frac{(\sum_{i=1}^{n}a_{i}x_{i})^2}{\sum_{i=1}^{n}(x_{i}-\bar{x})^2}

根据W的公式可推算出,W是a与x之间的相关系数的平方,W的取值范围始终在0和1之间。

同样可以根据公式推算出:当n取值在12到5000之间时,ln(1-W)是近似服从正态分布的,其中μ和σ取值如下:

\mu =0.0038915(\mathrm{ln } n)^{3}-0.083751(\mathrm{ln } n)^{2}-0.31082\mathrm{ln } n-1.5861

\sigma =e^{0.0030302(\mathrm{ln }n)^{2}-0.082676\mathrm{ln }n-0.4803}

7、W统计量转换为z统计量:

z=\frac{\mathrm{ln}(1-W)-\mu}{\sigma}

如果z值对应的p值小于α,则认为不服从正态分布。

excel实现步骤如下:

这篇关于excel统计分析——S-W正态性检验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/535954

相关文章

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

使用C#删除Excel表格中的重复行数据的代码详解

《使用C#删除Excel表格中的重复行数据的代码详解》重复行是指在Excel表格中完全相同的多行数据,删除这些重复行至关重要,因为它们不仅会干扰数据分析,还可能导致错误的决策和结论,所以本文给大家介绍... 目录简介使用工具C# 删除Excel工作表中的重复行语法工作原理实现代码C# 删除指定Excel单元

Python实现pdf电子发票信息提取到excel表格

《Python实现pdf电子发票信息提取到excel表格》这篇文章主要为大家详细介绍了如何使用Python实现pdf电子发票信息提取并保存到excel表格,文中的示例代码讲解详细,感兴趣的小伙伴可以跟... 目录应用场景详细代码步骤总结优化应用场景电子发票信息提取系统主要应用于以下场景:企业财务部门:需

Python处理大量Excel文件的十个技巧分享

《Python处理大量Excel文件的十个技巧分享》每天被大量Excel文件折磨的你看过来!这是一份Python程序员整理的实用技巧,不说废话,直接上干货,文章通过代码示例讲解的非常详细,需要的朋友可... 目录一、批量读取多个Excel文件二、选择性读取工作表和列三、自动调整格式和样式四、智能数据清洗五、

Python Pandas高效处理Excel数据完整指南

《PythonPandas高效处理Excel数据完整指南》在数据驱动的时代,Excel仍是大量企业存储核心数据的工具,Python的Pandas库凭借其向量化计算、内存优化和丰富的数据处理接口,成为... 目录一、环境搭建与数据读取1.1 基础环境配置1.2 数据高效载入技巧二、数据清洗核心战术2.1 缺失

利用Python实现Excel文件智能合并工具

《利用Python实现Excel文件智能合并工具》有时候,我们需要将多个Excel文件按照特定顺序合并成一个文件,这样可以更方便地进行后续的数据处理和分析,下面我们看看如何使用Python实现Exce... 目录运行结果为什么需要这个工具技术实现工具的核心功能代码解析使用示例工具优化与扩展有时候,我们需要将

通过C#获取Excel单元格的数据类型的方法详解

《通过C#获取Excel单元格的数据类型的方法详解》在处理Excel文件时,了解单元格的数据类型有助于我们正确地解析和处理数据,本文将详细介绍如何使用FreeSpire.XLS来获取Excel单元格的... 目录引言环境配置6种常见数据类型C# 读取单元格数据类型引言在处理 Excel 文件时,了解单元格

C#实现高性能Excel百万数据导出优化实战指南

《C#实现高性能Excel百万数据导出优化实战指南》在日常工作中,Excel数据导出是一个常见的需求,然而,当数据量较大时,性能和内存问题往往会成为限制导出效率的瓶颈,下面我们看看C#如何结合EPPl... 目录一、技术方案核心对比二、各方案选型建议三、性能对比数据四、核心代码实现1. MiniExcel

POI从入门到实战轻松完成EasyExcel使用及Excel导入导出功能

《POI从入门到实战轻松完成EasyExcel使用及Excel导入导出功能》ApachePOI是一个流行的Java库,用于处理MicrosoftOffice格式文件,提供丰富API来创建、读取和修改O... 目录前言:Apache POIEasyPoiEasyExcel一、EasyExcel1.1、核心特性

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格