• 数据集下载地址:Journal of Statistics Education - Data Archive

   用ctrl+F键搜索normtemp下载txt文件

  • 数据集描述:http://ww2.amstat.org/publications/jse/datasets/normtemp.txt

包括130条记录,我们主要利用体温和性别来进行实验

import pandas as pd
import pylab
import math
import numpy as np
import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np
from scipy.stats import norm
import scipy.stats
import warnings
warnings.filterwarnings("ignore")df = pd.read_csv('normtemp.txt',sep='   ',names = ['Temperature','Gender','Heart Rate'])
df.describe()

 体温的分布是正态的吗?

observed_temperatures = df['Temperature'].sort_values()#将参数导入
#按从小到大的顺序进行
bin_val = np.arange(start= observed_temperatures.min(), stop= observed_temperatures.max(), step = .05)
mu, std = np.mean(observed_temperatures), np.std(observed_temperatures)#均值和方差p = norm.pdf(observed_temperatures, mu, std)#画出pdfplt.hist(observed_temperatures,bins = bin_val, density=True, stacked=True)#直方图
plt.plot(observed_temperatures, p, color = 'red')
plt.xticks(np.arange(95.75,101.25,0.25),rotation=90)
plt.xlabel('Human Body Temperature Distributions')
plt.xlabel('human body temperature')
plt.show()print('Average (Mu): '+ str(mu) + ' / ' 'Standard Deviation: '+str(std))

Average (Mu): 98.24923076923076 / Standard Deviation: 0.7303577789050376

从图中可以看出该分布符合正态分布的样子。

再次进行检验:

x = observed_temperatures#Shapiro-Wilk Test: https://en.wikipedia.org/wiki/Shapiro%E2%80%93Wilk_test
shapiro_test, shapiro_p = scipy.stats.shapiro(x)
print("Shapiro-Wilk Stat:",shapiro_test, " Shapiro-Wilk p-Value:", shapiro_p)k2, p = scipy.stats.normaltest(observed_temperatures)
print('p:',p)#Another method to determining normality is through Quantile-Quantile Plots.
scipy.stats.probplot(observed_temperatures, dist="norm", plot=pylab)
pylab.show()

 算出p值为0.2587479863488212

Shapiro-Wilk Stat: 0.9865769743919373  Shapiro-Wilk p-Value: 0.2331680953502655
p: 0.2587479863488212

 画出ECDF:

def ecdf(data):#Compute ECDFn = len(data)x = np.sort(data)y = np.arange(1, n+1) / nreturn x, y# Compute empirical mean and standard deviation# Number of samples
n = len(df['Temperature']) # Sample mean
mu = np.mean(df['Temperature']) # Sample standard deviation
std = np.std(df['Temperature']) print('Mean temperature: ', mu, 'with standard deviation of +/-', std)#Random sampling of the data based off of the mean of the data.
normalized_sample = np.random.normal(mu, std, size=10000)
x_temperature, y_temperature = ecdf(df['Temperature'])
normalized_x, normalized_y = ecdf(normalized_sample)# Plot the ECDFs
fig = plt.figure(figsize=(8, 5))
plt.plot(normalized_x, normalized_y)
plt.plot(x_temperature, y_temperature, marker='.', linestyle='none')
plt.ylabel('ECDF')
plt.xlabel('Temperature')
plt.legend(('Normal Distribution', 'Sample data'))

Mean temperature:  98.24923076923076 with standard deviation of +/- 0.730357778905038

可以看出上下波动的值很低。

有学者提出98.6是人类的平均体温,我们该这样认为吗?

在这里我们选择t检验,因为我们只能计算样本的标准差。

from scipy import statsCW_mu = 98.6
stats.ttest_1samp(df['Temperature'], CW_mu, axis=0)
Ttest_1sampResult(statistic=-5.4548232923640771, pvalue=2.4106320415610081e-07)

T-Stat -5.454 p-value近乎0了. 我们该拒绝这样的假设

 男性和女性的体温有明显差异吗?

两独立样本t检验 H0: 没有明显差异 H1: 有明显差异

female_temp = df.Temperature[df.Gender == 2]
male_temp = df.Temperature[df.Gender == 1]
mean_female_temp = np.mean(female_temp)
mean_male_temp = np.mean(male_temp)
print('Average female body temperature = ' + str(mean_female_temp))
print('Average male body temperature = ' + str(mean_male_temp))# Compute independent t-test
stats.ttest_ind(female_temp, male_temp, axis=0)
Average female body temperature = 98.39384615384616
Average male body temperature = 98.1046153846154
Ttest_indResult(statistic=2.2854345381654984, pvalue=0.02393188312240236)

由于P值=0.024 < 0.05,我们需要拒绝原假设,我们有%95的自信认为是有差异的!

假设检验实例(python)相关推荐

  1. python零基础实例-Python初学零基础也不怕,从0开始!

    Python3 列表.列表是咱们在python中最常用的数据模型,他承担的重要的人物,也展示出了他强大的一面. 序列是Python中最根本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索 ...

  2. python程序实例讲解_python入门编程实例 python入门编程实例解析

    python入门编程实例 python入门编程实例解析 python入门编程实例及解析: 题目:有1.2.3.4四个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十 ...

  3. python代码实例-python程序实例

    广告关闭 2017年12月,云+社区对外发布,从最开始的技术博客到现在拥有多个社区产品.未来,我们一起乘风破浪,创造无限可能. github.comteamssixdouluo-download.gi ...

  4. python列表转化为数字信号_python 经典数字滤波实例 Python 数字信号处理程序实现分享解...

    常用的数字滤波的方法都有哪些,写出其中三种数字经典滤波的概念,是根据傅里叶分析和变换提出的一个工程概念.根据高等数学理论,任何一个满足一定条件的信号,都可以被看成是由无限个正弦波叠加而成.换句话说,就 ...

  5. Python3 实例--Python 平方根(**,cmath,复数的i和j部分)

    #Python3 实例--Python 平方根 print("Python3 实例--Python 平方根") #求正数的平方根 num = float(input()) num_ ...

  6. 手把手的K-means聚类算法教程(含简介及教育数据应用实例 Python实现)

    手把手的K-means聚类算法教程(含简介及教育数据应用实例 Python实现) 1. K-MEANS的基本原理 2. 数据预处理 2.1 数据读取:from Excel 2.2 数据预处理:标准化Z ...

  7. python课堂实例,Python电子教案2 1 Python程序实例解析课堂

    <Python电子教案2 1 Python程序实例解析课堂>由会员分享,可在线阅读,更多相关<Python电子教案2 1 Python程序实例解析课堂(41页珍藏版)>请在人人 ...

  8. 模拟退火算法详细讲解(含实例python代码)

    模拟退火算法详细讲解(含实例python代码) (一)模拟退火算法简介 (二)模拟退火算法原理 (三)退火过程中参数控制 (四)算法步骤 (五)实例分析 最近老师要求做模拟退火算法实验,看了很多博客之 ...

  9. pythonsuper多重继承_python多重继承实例 python多重继承下super问题

    python的多重继承问题有些事,有些人,有些风景,一旦入眼入心,即便刹那,也是永恒.当生活心怀歹毒地将一切都搞成了黑色幽默,小编顺水推舟把自己变成了一个受过高等教育的流氓. 楼上的回答的很正确,简单 ...

  10. python爬虫beautifulsoup实例-Python爬虫学习(二)使用Beautiful Soup库

    (一)使用Beautiful Soup库(默认将HTML转换为utf-8编码) 1,安装Beautiful Soup库:pip install beautifulsoup4 2,简单使用: impor ...

最新文章

  1. 【算法总结】数学问题-最大公约数和最小公倍数
  2. iOS swift2.3 迁移到3.0 遇到的一些问题
  3. 迎接奥运会 里约把机场的IT建设翻新了下
  4. Spring Cloud(二) 配置Eureka Client
  5. hdu 3681(bfs+dfs+状态压缩)
  6. 花呗分期计算器_花呗分期10000元利息怎么算?取决于你的分期期数!
  7. linux teaming状态命令,Linux 网卡Teaming
  8. 央视报道短视频侵权 呼吁多方配合保护影视版权
  9. AJAX JSONP源码实现(原理解析)
  10. 随笔1:音频编解码科学家
  11. hdu 1285 确定比赛名次
  12. HDU1555 How many days?【水题+模拟】
  13. Unity3D基础14:碰撞检测
  14. html标签的显示模式(块级标签,行内标签,行内块标签)
  15. hdu 5150 Sit sit sit
  16. 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP 1
  17. 阿里云前端周刊 - 第 18 期
  18. 基于微信小程序的课堂考勤系统设计与实现
  19. 《统计会犯错——如何避免数据分析中的统计陷阱》目录—导读
  20. 华为手机怎么把计算机放到桌面,将华为手机投影到计算机屏幕

热门文章

  1. Web前端学习上----(案例实现)
  2. 时光轴一之listView实现时光轴效果
  3. visual studio 2017 安装离线MSDN
  4. linux查看ftp客户端限速配置,vsftpd限速设置
  5. colorbox ajax,jquery弹出层插件推荐ColorBox有5种风格附中文文档
  6. 千万不要给女朋友解释 什么是 “羊群效应”
  7. 数据数值转换factorize和dummy
  8. HANA中临时表查询DUMMY
  9. Yann Martell《少年 pi 的奇幻漂流》
  10. python turtle工具绘制四叶草