python统计分析——两样本t检验

参考资料:用python动手学统计学

1、导入库

# 导入库
# 用于数值计算的库
import numpy as np
import pandas as pd
import scipy as sp
from scipy import stats
# 用于绘图的库
from matplotlib import pyplot as plt
import seaborn as sns
sns.set()

2、准备数据

data=pd.DataFrame({
    'person':['A', 'B', 'C', 'D', 'E', 'A', 'B', 'C', 'D', 'E'],
    'medicine':['before', 'before', 'before', 'before', 'before', 'after', 'after', 'after', 'after', 'after'],
    'temp':[36.2, 36.2, 35.3, 36.1, 36.1, 36.8, 36.1, 36.8, 37.1, 36.9]
}
)
data

3、提出假设
零假设H0:服药前后体温不变

备择假设HA:服药前后体温有变化

4、配对数据t检验

4.1求出配对数据间的差值

# 方法1
before=data.query("medicine=='before'")['temp']
after=data.query("medicine=='after'")['temp']
# 转化为数组
before=np.array(before)
after=np.array(after)
# 计算差值
diff=after-before
diff
# 方法2
before=data.loc[data.medicine=='before']['temp']
after=data.loc[data.medicine=='after']['temp']
# 转化为数组
before=np.array(before)
after=np.array(after)
# 计算差值
diff=after-before
diff
# 方法3
data2=data.pivot_table(index='person',columns='medicine',values='temp')
diff=data2.after-data2.before
diff

4.2 进行t检验

方法一:函数scipy.stats.ttest_1samp()

相关参数设置参考:https://blog.csdn.net/maizeman126/article/details/135977775

stats.ttest_1samp(diff,0)

方法二:函数scipy.stats.ttest_rel()

stats.ttest_rel(after,before)

ttest_rel()函数的相关参数设置与ttest_1samp()函数基本一致。

这里对ttest_rel()函数alternative参数的设置进行介绍:

'two-sided':表示a,b两列数据的均值不同。

'less':表示前者的均值小于后者。

'greater':表示前者的均值大于后者。

5、结论

pvalue<0.05,可以认为服药前后体温有显著变化。

6、独立样本t检验

       原则上配对数据不适用于独立样本t检验,这里只是为了介绍独立样本t检验,将现有的data数据假设为独立样本数据。

       独立样本t检验分为等方差和异方差。在python中都是一个函数,只是在参数设置上不一样。函数为:scipy.stats.ttest_ind()。这里重点介绍:equal_var参数,用于设置等方差还是异方差,默认为True,即等方差;当设置为False时,则进行Welch's t-test。

       按照传统教材,独立样本t检验需要检查数据的同方差性,在根据情况进行相应的t检验。但《用python动手学统计学》作者认为忽略两个样本是否为同方差,直接以方差不同位置前提进行检验也无大碍;大家可以根据自身需求选择严谨的t检验步骤或粗放的t检验步骤。

stats.ttest_ind(after,before,equal_var=False)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/382395.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【HTTP】localhost和127.0.0.1的区别是什么?

目录 localhost是什么呢&#xff1f; 从域名到程序 localhost和127.0.0.1的区别是什么&#xff1f; 域名的等级划分 多网站共用一个IP和端口 私有IP地址 IPv6 今天在网上逛的时候看到一个问题&#xff0c;没想到大家讨论的很热烈&#xff0c;就是标题中这个&#xff1a; …

基于微信小程序的校园故障维修管理系统的研究与实现

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

闭区间上连续函数的性质【高数笔记】

1. 分几个性质 2. 每个性质的注意事项是什么 3. 每个性质适用什么类型的题型 4. 注意最值定理和正弦函数的不同 5. 做题步骤是什么

使用Docker本地部署Jupyter Notebook并结合内网穿透实现远程访问

文章目录 1. 选择与拉取镜像2. 创建容器3. 访问Jupyter工作台4. 远程访问Jupyter工作台4.1 内网穿透工具安装4.2 创建远程连接公网地址4.3 使用固定二级子域名地址远程访问 本文主要介绍如何在Ubuntu系统中使用Docker本地部署Jupyter Notebook&#xff0c;并结合cpolar内网穿透…

异地的文件如何共享?

在现代工作中&#xff0c;随着互联网的普及和信息化的进步&#xff0c;越来越多的人需要在异地进行文件共享和协同办公。无论是企业的异地分支机构&#xff0c;还是多个个人之间的跨地合作&#xff0c;通过异地的文件共享可以极大地提高工作效率和协作效果。本文将介绍一种名为…

C# CAD交互界面-自定义面板集-添加快捷命令(五)

运行环境 vs2022 c# cad2016 调试成功 一、引用 using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.Runtime; using Autodesk.AutoCAD.Windows; using System; using System.Drawing; using System.Windows.Forms; 二、代码说明 [CommandMethod("Cre…

【Python 千题 —— 基础篇】查找年龄

Python 千题持续更新中 …… 脑图地址 👉:⭐https://twilight-fanyi.gitee.io/mind-map/Python千题.html⭐ 题目描述 题目描述 班级中有 Tom、Alan、Bob、Candy、Sandy 五个人,他们组成字典 {Tom: 23, Alan: 24, Bob: 21, Candy: 22, Sandy: 21},字典的键是姓名,字典的…

【FPGA开发】Modelsim和Vivado的使用

本篇文章包含的内容 一、FPGA工程文件结构二、Modelsim的使用三、Vivado的使用3.1 建立工程3.2 分析 RTL ANALYSIS3.2.1 .xdc约束&#xff08;Constraints&#xff09;文件的产生 3.3 综合 SYNTHESIS3.4 执行 IMPLEMENTATION3.5 烧录程序3.6 程序固化3.6.1 SPI约束3.6.2 .bin文…

postgresql 手动清理wal日志的101个坑

新年的第一天&#xff0c;总结下去年遇到的关于WAL日志清理的101个坑&#xff0c;以及如何相对安全地进行清理。前面是关于WAL日志堆积的原因分析&#xff0c;清理相关可以直接看第三部分。 首先说明&#xff0c;手动清理wal日志是一个高风险的操作&#xff0c;尤其对于带主从的…

《CSS 简易速速上手小册》第6章:高级 CSS 技巧(2024 最新版)

文章目录 6.1 使用 CSS 变量进行设计&#xff1a;魔法配方的调配6.1.1 基础知识6.1.2 重点案例&#xff1a;创建可定制的主题6.1.3 拓展案例 1&#xff1a;响应式字体大小6.1.4 拓展案例 2&#xff1a;使用 CSS 变量创建动态阴影效果 6.2 calc(), min(), max() 等函数的应用&am…

AES加密中的CBC和ECB

目录 1.说明 2.ECB模式&#xff08;base64&#xff09; 3.CBC模式 4.总结 1.说明 AES是常见的对称加密算法&#xff0c;加密和解密使用相同的密钥&#xff0c;流程如下&#xff1a; 主要概念如下&#xff1a; ①明文 ②密钥 用来加密明文的密码&#xff0c;在对称加密算…

CTF-PWN-沙箱逃脱-【侧信道爆破】(2021-蓝帽杯初赛-slient)

文章目录 侧信道攻击测信道爆破2021-蓝帽杯初赛-slient先自己准备个flag检查沙箱IDA源码mainsub_A60() 相关知识size_t getpagesize(void)void *mmap(void *addr, size_t length, int prot, int flags, int fd, off_t offset);range(i,j)编写相关shellcode发现"的用法此时…

什么是宿主软件?宿主软件有哪些?

什么是宿主软件? 宿主软件就是专业的音乐制作软件&#xff0c;我们日常听到的大多数正规音乐作品都是用宿主软件制作出来的&#xff0c;这些软件一般需要安装各类插件&#xff0c;插件就像寄生虫需要在宿主软件里加载才可以工作。 插件主要分虚拟乐器插件和音频处理插件两类…

JZ36 二叉搜索树与双向链表

目录 题目描述 二叉搜索树与双向链表_牛客题霸_牛客网 题目解析 题目答案 最后 题目描述 二叉搜索树与双向链表_牛客题霸_牛客网 题目解析 这里采用的是采用前序遍历的思想&#xff0c;找到要转换的双向链表的头节点也就是这个二叉搜索树的最左节点&#xff0c;找到之后依…

MySQL篇----第十九篇

系列文章目录 文章目录 系列文章目录前言一、什么是存储过程?用什么来调用?二、如何通俗地理解三个范式?三、什么是基本表?什么是视图?四、试述视图的优点?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这…

力扣[面试题 01.02. 判定是否互为字符重排(哈希表,位图)

Problem: 面试题 01.02. 判定是否互为字符重排 文章目录 题目描述思路复杂度Code 题目描述 思路 思路1&#xff1a;哈希表 1.若两个字符串长度不相等&#xff0c;则一定不符合题意&#xff1b; 2.创建一个map集合&#xff0c;先将字符串s1中的每一个字符与其对应的数量存入集合…

2024.2.10 DMS(数据库管理系统)初体验

数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件&#xff0c;用于建立、使用和维护数据库&#xff0c;简称DBMS。它对数据库进行统一的管理和控制&#xff0c;以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据&#xff0c;数据库管…

大年初一,送出最后8000个红包封面!

今天是大年初一&#xff0c;大家都是怎么安排的&#xff1f; 小灰最近在南方旅游&#xff0c;玩得很开心&#xff0c;后面会给大家分享自己的见闻。 过年期间&#xff0c;大家多少都会给亲朋好友发一些微信红包&#xff0c;拥有个性化的红包封面绝对是一件很酷的事情。 前一段时…

007集——数据存储的端序(大端序和小端序转换代码)——VB/VBA

VB/VBA存储的端序 1、要想制造高性能的VB/VBA代码&#xff0c;离了指针是很难办到的。 2、因为VB/VBA里&#xff0c;用Long来表示指针&#xff0c;而32位(包括64位兼容的)计算机里4字节整数的处理&#xff0c;是最快的方式&#xff01; 3、要想用指针来处理数据&#xff0c;…

4. ⼤模型微调方法

到底有哪些微调⽅法呢&#xff1f; 第⼀类⽅法&#xff1a;借助OpenAI提供的在线微调⼯具进⾏微调&#xff1b;第⼆类⽅法&#xff1a;借助开源微调框架进⾏微调&#xff1b; 1. OpenAI在线微调⼯具 网址&#xff1a;https://platform.openai.com/docs/guides/fine-tuning/c…