正态性检验

正态性检验是检验数据是否符合正态分布,也是很多统计建模的必要步骤,在Python中实现正态性检验可以使用W检验(SHAPIRO-WILK TEST)

检验原假设:样本服从正态分布

Python命令stat, p = shapiro(data)

结果解释:当p值小于某个显著性水平α(如0.05)时,则认为样本不是来自正态分布的总体,否则承认样本来自正态分布的总体。

##########示例代码

from scipy.stats import shapiro

data = [0.86, 0.78, 0.83, 0.84, 0.77, 0.84, 0.81, 0.84, 0.81, 0.81, 0.80, 0.81,

0.79, 0.74, 0.82, 0.78, 0.82, 0.78, 0.81, 0.80, 0.81, 0.74, 0.87, 0.78]

stat, p = shapiro(data)

print("stat为:%f" %stat,"p值为:%f" %p)

#stat为:0.966175 p值为:0.574134

相关性检验:皮尔逊相关系数

皮尔逊相关系数(Pearson Correlation Coefficient)用于衡量两个变量之间的线性相关相关关系,相关系数的取值在-1与1之间,大于0为正相关,小于0为负相关。

基本假定:每个样本中的观察是独立同分布的

每个样本的观察都是正态分布的

每个样本的观察具有相同的方差

所有变量都是连续型变量

检验原假设:两个变量不相关

Python命令:corr,p = pearsonr(x,y)

结果解释:当p值小于某个显著性水平α(比如0.05)时,则拒绝原假设,认为两个变量是相关的。否则认为是不相关的。

注意:这里的相关仅为统计学意义上的相关性,并不能理解为实际因果关系!!

#########示例代码

from scipy.stats import pearsonr

data1 = [23,20,18,29,43,35,32,40,29,26,24,26]

data2 = [1000,1000,500,500,500,100,100,100,100,100,100,100]

corr,p = pearsonr(data1,data2)

print("corr为:%f" %corr,"p值为:%f" %p)

#corr为:-0.392250 p值为:0.207253

相关性检验:斯皮尔曼相关系数

斯皮尔曼相关系数(SPEARMAN’S RANK CORRELATION)又称为斯皮尔曼等级相关系数。是一种非参数方法,衡量两个变量的依赖性的非参数指标。

基本假定:每个样本中的观察是独立同分布的

每个样本的观察具有相同的方差

所有变量可以是连续型变量或可排序的分类变量

检验原假设:两个变量不相关

Python命令:corr,p =spearmanr(x,y)

结果解释:当p值小于某个显著性水平α(比如0.05)时,则则拒绝原假设,认为两个变量是相关的。否则认为是不相关的。

#######示例代码

from scipy.stats import spearmanr

data1 = [23,20,18,29,43,35,32,40,29,26,24,26]

data2 = [1000,1000,500,500,500,100,100,100,100,100,100,100]

corr, p= spearmanr(data1, data2)

print("corr为:%f" %corr,"p值为:%f" %p)

#corr为:-0.435153 p值为:0.157414

卡方检验

卡方检验是一种用途很广的计数资料的假设检验方法。它属于非参数检验的范畴,卡方检验就是统计样本的实际观测值与理论推断值之间的偏离程度,实际观测值与理论推断值之间的偏离程度就决定卡方值的大小,如果卡方值越大,二者偏差程度越大;反之,二者偏差越小;若两个值完全相等时,卡方值就为0,表明理论值完全符合。

注意:卡方检验仅针对分类变量

用于计算列联表的观察是独立的。

列联表的每个单元格中有25个或更多个实例。

检验原假设:观察频数与期望频数无显著差异

Python命令:chi2_contingency(data)

结果解释:当p值小于某个显著性水平α(比如0.05)时,则拒绝原假设,认为两个样本有显著差异。

########示例代码

from scipy.stats import chi2_contingency

import numpy as np

kf_data = np.array([[20,21], [22,24]])

kf = chi2_contingency(kf_data)

print('chisq-statistic=%.4f, p-value=%.4f, df=%i expected_frep=%s'%kf)

chisq-statistic=0.0159, p-value=0.8997, df=1 expected_frep=[[19.79310345 21.20689655]

[22.20689655 23.79310345]]

T检验:单样本T检验

单样本t检验是样本均值与总体均值的比较问题。其中总体服从正态分布,从正态总体中抽样得到n个个体组成抽样样本,计算抽样样本均值和标准差,判断总体均值与抽样样本均值是否相同。

基本假定:样本数据服从正态或近似正态分布

每个样本中的观察是独立同分布的

T检验属于参数检验,用于检验定量数据,若数据均为定类数据则应使用卡方检验

检验原假设:样本均值无差异(μ=μ0)

Python命令.ttest_1samp(data,1)

结果解释:当p值小于某个显著性水平α(比如0.05)时,则认为样本均值存在显著差异,具体的分析要看所选择的是双边假设还是单边假设(又分小于和大于)注意ttest_1samp进行双侧检验。

#示例代码,检验样本均值与1是否有差异

from scipy import stats

data = [23,20,18,29,43,35,32,40,29,26,24,26]

stats.ttest_1samp(data,1)

#Ttest_1sampResult(statistic=-29.095366280269644, pvalue=1.2015599001111872e-19)

T检验:两样本T检验

两样本t检验是比较两个样本所代表的两个总体均值是否存在显著差异。除了要求样本来自正态分布,还要求两个样本的总体方差相等也就是“方差齐性”。

检验原假设:样本均值无差异(μ=μ0)

Python命令stats.ttest_ind(data1,data2)

当不确定两总体方差是否相等时,应先利用levene检验检验两总体是否具有方差齐性stats.levene(data1,data2)如果返回结果的p值远大于0.05,那么我们认为两总体具有方差齐性。如果两总体不具有方差齐性,需要加上参数equal_val并设定为False,如下。

stats.ttest_ind(data1,data2,equal_var=False)

结果解释:当p值小于某个显著性水平α(比如0.05)时,则认为样本均值存在显著差异,具体的分析要看所选择的是双边假设还是单边假设(又分小于和大于)注意stats.ttest_ind进行双侧检验。

#示例代码,检验两组样本均值是否相等

from scipy import stats

data1 = [23,20,18,29,43,35,32,40,29,26,24,26]

data2 = [1000,1000,500,500,500,100,100,100,100,100,100,100]

stats.ttest_ind(data1,data2)

#Ttest_indResult(statistic=-3.1758496679296524, pvalue=0.004373771039397662)

T检验:配对T检验

配对样本均数T检验简称配对T检验(paired t test), 又称非独立两样本均数t检验,适用于配对设计计量资料均数的比较,其比较目的是检验两相关样本均数所代表的未知总体均数是否有差别。与独立样本T检验相比,配对样本T检验要求样本是配对的。两个样本的样本量要相同;样本先后的顺序是一一对应的。

基本假定:每个样本中的观察是独立同分布的

每个样本的观察都是正态分布的

每个样本中的观察具有相同的方差

每个样本的观察结果是成对的

检验原假设:样本均值无差异(μ=μ0)

Python命令stats.ttest_rel(data1,data2)

结果解释:当p值小于某个显著性水平α(比如0.05)时,则认为样本均值存在显著差异,具体的分析要看所选择的是双边假设还是单边假设(又分小于和大于)注意stats.ttest_rel进行双侧检验。

####示例代码,配对样本T检验

from scipy import stats

data1 = [23,20,18,29,43,35,32,40,29,26,24,26]

data2 = [1000,1000,500,500,500,100,100,100,100,100,100,100]

stats.ttest_rel(data1,data2)

#Ttest_relResult(statistic=-3.149034903041314, pvalue=0.009258094005021552)

“以上就是早起的统计工具箱第一期内容,有关如何使用Python进行方差分析以及一些非参数的检验实现方法我们下期再聊,记得在看哦~

python卡方检验kf_data_常用统计检验的Python实现相关推荐

  1. python图形化方式模块安装_(怎么安装python模块,如何安装python模块,常用安装方式)python助手安装教程视频...

    有没有比较好的python3的入门视频教程,网盘或网站都可以. 我这里有Python,开发,进阶,自动化,实战列视频教程,还有安装包,,代码等容,这里就不一一说了,全套内容一共300G左右,非常的详细 ...

  2. python卡方检验kf_data_统计学中的各种检验-scipy.stats和statsmodels.stats的使用

    这里会罗列一些统计学中的检验方法,当然顺序以笔者遇到的为准. 1.方差分析 1.1 概述 对于均值的检验,一般分为以下几种情况: 某样本均值与常数的比较 两个样本均值的比较 两个以上样本均值的比较 对 ...

  3. python 卡方检验批量筛选_用python和Excel进行列联表分析(卡方检验)

    用python和Excel进行列联表分析 卡方检验回顾(独立性检验) 行(\(r_i\))列(\(c_j\)) \(j=1\) \(j=2\) \(\cdots\) 合计 \(i=1\) \(f_{1 ...

  4. python 卡方检验批量筛选_基于Python的遥感特征筛选—卡方检验筛选

    引言 目前,遥感图像在模式识别.图像分割.地面参数反演研究中有着广泛的应用.遥感图像一般具有多个波段,每个波段均反映了地物的不同波谱特性.相对于图像分类而言,不同的波长位置的波谱反射可能存在较多的信息 ...

  5. 用python画图代码-常用激活函数的python画图代码

    引入模块 import numpy as np import math import matplotlib.pyplot as plt e=math.e 1.sigmoid def sigmoid(x ...

  6. Python 刷题常用语法与数据结构汇总-2022.01.30

    [笔试]python刷题笔记(基础)! https://blog.csdn.net/a_123456598/article/details/105420802 python语法刷题 https://b ...

  7. Python 卡方检验演算

    Python 卡方检验演算 1 声明 本文的数据来自网络,部分代码也有所参照,这里做了注释和延伸,旨在技术交流,如有冒犯之处请联系博主及时处理. 2 卡方检验简介 卡方统计检验用于检测两个分类向量的独 ...

  8. python第三方库排行-Python模块汇总(常用第三方库)

    模块 定义 计算机在开发过程中,代码越写越多,也就越难以维护,所以为了编写可维护的代码,我们会把函数进行分组,放在不同的文件里.在python里,一个.py文件就是一个模块 优点: 提高代码的可维护性 ...

  9. Python十大常用文件操作

    日常对于批量处理文件的需求非常多,用Python写脚本可以非常方便地实现,但在这过程中难免会和文件打交道,第一次做会有很多文件的操作无从下手,只能找度娘. 本篇文章整理了10个Python中最常用到的 ...

最新文章

  1. php lang无效,详解 Go 中的不可变类型
  2. dpkg: 处理软件包 update-notifier-common (--configure)时出错:
  3. 关于SpringAOP的XML方式的配置
  4. 【快乐水题】1816. 截断句子
  5. Sql语句之select 5种查询
  6. 问题四:C++中inline是干嘛用的
  7. 连接数mysql证登录名和密码_mysql连接数
  8. jsessionid 在谷歌一直变_谷歌相册也要收费,这次我全靠这些云盘救命
  9. c语言写俄罗斯方块(源码)
  10. 用C语言写烟花,给心中的那个人看!
  11. 易绍坤网络赚钱:淘宝客获取佣金网赚之路,该如何进行?
  12. 怎样把HTC G7的内存扩展到2GB
  13. MCAL中DIO的配置
  14. clipboard.js
  15. 微分,变分,差分的确切定义与区别
  16. springboot线上教学平台计算机毕业设计(源码、运行环境)
  17. CF786A - Berzerk
  18. 清华学堂 LightHouse
  19. 可怕流氓:百度全家桶
  20. 如何处理G120变频器的F08501故障

热门文章

  1. 05年杀毒软件世界排名
  2. SD卡数据恢复软件认准easyrecovery
  3. JS提交表单的几种方式
  4. matlab table中的文字转string_Table数据结构及应用--MATLAB 基础篇
  5. php 自带sql防注入函数,php 防Sql注入函数的简单示例
  6. iOS5.0.1完美越狱教程 iPhone4可越狱了[转]
  7. python怎么找项目做小生意_三个投资小回报大的项目,让你没钱也能做买卖!
  8. 软工结对编程之二——UI设计(10061191洪虹10061162刘俊伟)
  9. 有赞零售小票打印跨平台解决方案
  10. asterisk 使用php脚本socket通过AMI端口实现自动打电话报警