统计学常用的分析方法:T检验

T检验是一种用于比较数据集均值差异的统计方法,包括单样本t检验、配对样本t检验和独立样本t检验,可通过MATLAB、Python和R等工具实现t检验。如果数据不符合正态分布,可考虑使用非参数分析,多余两组数据时,可采用多重比较方法。

1.T检验概述

图片

T检验根据使用场景可以分为三类:

(1) 单样本t检验(One-sample t-test)

用途:比较单个样本的均值与已知总体均值的差异。

假设:样本来自正态分布的总体。

例子:学生的每次数学成绩是否是符合均值为xx的正态分布

(2) 配对样本t检验(Paired Samplest-test)

用途:用于比较同一组样本在两个不同条件下的均值是否显著不同

假设:假设两个条件下的数据是成对的,即每个观察值在两个条件下都有对应。另外,假设成对差值符合正态分布。

例子:班级里的所有学生期中考试和期末考试成绩的数学成绩是否存在差异

(3) 独立样本t检验(Independent Samples t-test)

用途:比较两个独立样本的均值是否显著不同

假设:假设两组数据是独立的,即一个组的观察值不会受到另一个组的影响。,另外,假设两组数据符合正态分布和方差齐性。

例子:两个班级进行同一场考试,学生数学考试成绩是否存在差异

如果样本量很小,就难以检验正态性,在这种情况下需要对所分析的数据有一定的理解。比如,对于考试分数数据,如果清楚分数差异的潜在分布是符合正态分布的。即使是很小的样本量,讲师也可能会采用 t 检验并做出正态性假设。

如果知道潜在测量值不是正态分布的,或者样本量较大并且正态性检验被拒绝,在这种情况下,可以使用非参数分析。这种类型的分析不需要假设数据来自特定的分布。

  • 对于单样本 t­ 检验和配对 t­ 检验,可以使用Wilcoxon 符号秩检验替代。

  • 对于双样本 t­ 检验,可以使用Wilcoxon 秩和检验替代。

如果有两个以上的组,可以使用多重比较方法。 该方法包括:方差分析 (ANOVA),用于检验所有配对差异的 Tukey-Kramer 检验,用于将组间均值与总体均值进行比较的均值分析 (ANOM),或用于将每组均值与对照均值进行比较的 Dunnett’s 检验。

2.代码实现t检验

2.1 Matlab

单一样本t检验:

[h, p, ci, stats] = ttest(data, mu);

配对样本t检验:

[h, p, ci, stats] = ttest(data1, data2);

独立样本t检验:

[h, p, ci, stats] = ttest2(data1, data2);

2.2 Python

单一样本t检验:

from scipy.stats import ttest_1samp
t_stat, p_value = ttest_1samp(data, mu)

独立样本t检验:

from scipy.stats import ttest_ind
t_stat, p_value = ttest_ind(data1, data2)

配对样本t检验:

from scipy.stats import ttest_rel
t_stat, p_value = ttest_rel(data1, data2)

2.3 R语言

单一样本t检验:

t_test <- t.test(data, mu = mu)

配对样本t检验:

t_test <- t.test(data1, data2, paired = TRUE)

独立样本t检验:

t_test <- t.test(data1, data2)

3.单一样本t检验

假设有一组学生的期末考试成绩,并且学校规定的平均成绩为90分,想知道这组学生的成绩是否显著高于或低于学校的平均水平。

3.1 MATLAB

% 生成模拟数据:学生期末考试成绩
% 这些数据代表一组学生在期末考试中的成绩,学校规定的平均成绩是90分
data = [85, 88, 90, 87, 93, 86, 88]; % 样本数据
mu = 90; % 学校规定的平均成绩% 执行单一样本t检验
[h, p, ci, stats] = ttest(data, mu);% 显示结果
disp(['t-statistic: ', num2str(stats.tstat)]);
disp(['p-value: ', num2str(p)]);% 根据p值判断检验结果
if p < 0.05disp('样本均值与总体均值有显著差异');
elsedisp('样本均值与总体均值无显著差异');
end

3.2 Python

import scipy.stats as stats# 生成模拟数据:学生期末考试成绩
# 这些数据代表一组学生在期末考试中的成绩,学校规定的平均成绩是90分
data = [85, 88, 90, 87, 93, 86, 88]  # 样本数据
mu = 90  # 学校规定的平均成绩# 执行单一样本t检验
t_stat, p_value = stats.ttest_1samp(data, mu)# 显示结果
print(f't-statistic: {t_stat}, p-value: {p_value}')# 根据p值判断检验结果
if p_value < 0.05:print('样本均值与总体均值有显著差异')
else:print('样本均值与总体均值无显著差异')

3.3 R语言

# 生成模拟数据:学生期末考试成绩
# 这些数据代表一组学生在期末考试中的成绩,学校规定的平均成绩是90分
data <- c(85, 88, 90, 87, 93, 86, 88) # 样本数据
mu <- 90 # 学校规定的平均成绩# 执行单一样本t检验
t_test <- t.test(data, mu = mu)# 显示结果
print(t_test)# 根据p值判断检验结果
if (t_test$p.value < 0.05) {print('样本均值与总体均值有显著差异')
} else {print('样本均值与总体均值无显著差异')
}

4.独立样本t检验

假设有两班学生的期末考试成绩,想比较这两班学生的成绩是否有显著差异。

4.1MATLAB

% 生成模拟数据:两班学生期末考试成绩
% 班级1的成绩
data1 = [85, 88, 90, 87, 93, 86, 88];
% 班级2的成绩
data2 = [78, 82, 84, 80, 85, 81, 79];% 执行独立样本t检验
[h, p, ci, stats] = ttest2(data1, data2);% 显示结果
disp(['t-statistic: ', num2str(stats.tstat)]);
disp(['p-value: ', num2str(p)]);% 根据p值判断检验结果
if p < 0.05disp('两班学生的成绩有显著差异');
elsedisp('两班学生的成绩无显著差异');
end

4.2 Python

import scipy.stats as stats# 生成模拟数据:两班学生期末考试成绩
# 班级1的成绩
data1 = [85, 88, 90, 87, 93, 86, 88]
# 班级2的成绩
data2 = [78, 82, 84, 80, 85, 81, 79]# 执行独立样本t检验
t_stat, p_value = stats.ttest_ind(data1, data2)# 显示结果
print(f't-statistic: {t_stat}, p-value: {p_value}')# 根据p值判断检验结果
if p_value < 0.05:print('两班学生的成绩有显著差异')
else:print('两班学生的成绩无显著差异')

4.3 R语言

# 生成模拟数据:两班学生期末考试成绩
# 班级1的成绩
data1 <- c(85, 88, 90, 87, 93, 86, 88)
# 班级2的成绩
data2 <- c(78, 82, 84, 80, 85, 81, 79)# 执行独立样本t检验
t_test <- t.test(data1, data2)# 显示结果
print(t_test)# 根据p值判断检验结果
if (t_test$p.value < 0.05) {print('两班学生的成绩有显著差异')
} else {print('两班学生的成绩无显著差异')
}

5.配对样本t检验

假设有一组学生的期中和期末考试成绩,想比较这些学生在两个时间点的成绩是否有显著差异。

5.1 MATLAB

% 生成模拟数据:学生期中与期末考试成绩
% 这些数据代表一组学生在期中和期末考试中的成绩
data1 = [85, 88, 90, 87, 93, 86, 88]; % 期中考试成绩
data2 = [88, 90, 91, 89, 94, 87, 90]; % 期末考试成绩% 执行配对样本t检验
[h, p, ci, stats] = ttest(data1, data2);% 显示结果
disp(['t-statistic: ', num2str(stats.tstat)]);
disp(['p-value: ', num2str(p)]);% 根据p值判断检验结果
if p < 0.05disp('期中和期末考试成绩有显著差异');
elsedisp('期中和期末考试成绩无显著差异');
end

5.2 Python

import scipy.stats as stats# 生成模拟数据:学生期中与期末考试成绩
# 这些数据代表一组学生在期中和期末考试中的成绩
data1 = [85, 88, 90, 87, 93, 86, 88]  # 期中考试成绩
data2 = [88, 90, 91, 89, 94, 87, 90]  # 期末考试成绩# 执行配对样本t检验
t_stat, p_value = stats.ttest_rel(data1, data2)# 显示结果
print(f't-statistic: {t_stat}, p-value: {p_value}')# 根据p值判断检验结果
if p_value < 0.05:print('期中和期末考试成绩有显著差异')
else:print('期中和期末考试成绩无显著差异')

5.3 R语言

# 生成模拟数据:学生期中与期末考试成绩
# 这些数据代表一组学生在期中和期末考试中的成绩
data1 <- c(85, 88, 90, 87, 93, 86, 88) # 期中考试成绩
data2 <- c(88, 90, 91, 89, 94, 87, 90) # 期末考试成绩# 执行配对样本t检验
t_test <- t.test(data1, data2, paired = TRUE)# 显示结果
print(t_test)# 根据p值判断检验结果
if (t_test$p.value < 0.05) {print('期中和期末考试成绩有显著差异')
} else {print('期中和期末考试成绩无显著差异')
}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win10中使用ffmpeg和MediaMTX 推流rtsp视频

在win10上测试下ffmpeg推流rtsp视频&#xff0c;需要同时用到流媒体服务器MediaMTX 。ffmpeg推流到流媒体服务器MediaMTX &#xff0c;其他客户端从流媒体服务器拉流。 步骤如下&#xff1a; 1 下载MediaMTX github: Release v1.9.3 bluenviron/mediamtx GitHub​​​​​…

网络安全-web架构-nginx配置

1. nginx访问&#xff1a; 访问的是index.html&#xff0c; 访问ip访问的资源就是在/usr/share/nginx/html中&#xff1b; 当nginx不认识&#xff0c;浏览器认识的话&#xff0c;浏览器会自动渲染。 当nginx认识&#xff0c;浏览器不认识的话&#xff0c;浏览器会把它加载成…

Python + 深度学习从 0 到 1(00 / 99)

希望对你有帮助呀&#xff01;&#xff01;&#x1f49c;&#x1f49c; 如有更好理解的思路&#xff0c;欢迎大家留言补充 ~ 一起加油叭 &#x1f4a6; 欢迎关注、订阅专栏 【深度学习从 0 到 1】谢谢你的支持&#xff01; ⭐ 什么是深度学习&#xff1f; 人工智能、机器学习与…

Chinese SimpleQA:包含3000个高质量问题,覆盖6个主要主题,每个主题下有99个细分主题,用来评估大型语言模型中文事实性能力的基准测试.

2024-11-12, 由阿里巴巴集团旗下的淘宝和天猫团队创建的Chinese SimpleQA数据集&#xff0c;是首个全面评估语言模型回答简短问题事实性能力的中文基准测试。该数据集的创建&#xff0c;为理解和提升大型语言模型在中文环境下的事实性回答能力提供了重要的工具和标准。 数据集…

Kafka 生产者优化与数据处理经验

Kafka&#xff1a;分布式消息系统的核心原理与安装部署-CSDN博客 自定义 Kafka 脚本 kf-use.sh 的解析与功能与应用示例-CSDN博客 Kafka 生产者全面解析&#xff1a;从基础原理到高级实践-CSDN博客 Kafka 生产者优化与数据处理经验-CSDN博客 Kafka 工作流程解析&#xff1a…

Python中Tushare(金融数据库)入门详解

文章目录 Python中Tushare&#xff08;金融数据库&#xff09;入门详解一、引言二、安装与注册1、安装Tushare2、注册与获取Token 三、Tushare基本使用1、设置Token2、获取数据2.1、获取股票基础信息2.2、获取交易日历2.3、获取A股日线行情2.4、获取沪股通和深股通成份股2.5、获…

shell第一次作业

要求&#xff1a; 通过shell脚本分析部署nginx网络服务 1.接收用户部署的服务名称 2.判断服务是否安装 ​ 已安装&#xff1b;自定义网站配置路径为/www&#xff1b;并创建共享目录和网页文件&#xff1b;重启服务 ​ 没有安装&#xff1b;安装对应的软件包 3.测试 判断服务是…

1+X应急响应(网络)病毒与木马的处置:

病毒与木马的处置&#xff1a; 病毒与木马的简介&#xff1a; 病毒和木马的排查与恢复&#xff1a;

服务器数据恢复—热备盘未激活导致硬盘掉线的raid5阵列崩溃的数据恢复案例

服务器数据恢复环境&#xff1a; 某品牌X3850服务器中有一组由数块SAS硬盘组建的RAID5阵列&#xff0c;该阵列中有一块盘是热备盘。操作系统为linux redhat&#xff0c;上面跑着一个基于oracle数据库的oa。 服务器故障&#xff1a; 服务器raid5阵列中有一块硬盘离线&#xff0…

Eclipse 创建Dynamic web project项目-配置Tomcat服务器

1、new——>project: 2、选择web的 Dynamic web project项目: 3、 项目命名&#xff0c;选择new runtime(没有部署过web项目&#xff0c;一般tartget runtime选项里面是空的)&#xff1a; 4、完成1、2的路径选择&#xff1a; 5、完成两个选项操作后&#xff0c;点击finish &…

理解折半查找法

理解折半查找法&#xff1a;高效的查找算法 折半查找法&#xff08;又称二分查找法&#xff09;是一种高效的查找算法&#xff0c;用于查找一个已排序数组中的目标元素。与线性查找方法不同&#xff0c;折半查找每次都将搜索范围减半&#xff0c;从而大幅提升查找效率。本文将详…

VM虚拟机装MAC后无法联网,如何解决?

✨在vm虚拟机上&#xff0c;给虚拟机MacOS设置网络适配器。选择NAT模式用于共享主机的IP地址 ✨在MacOS设置中设置网络 以太网 使用DHCP ✨回到本地电脑上&#xff0c;打开 服务&#xff0c;找到VMware DHCP和VMware NAT&#xff0c;把这两个服务打开&#xff0c;专一般问题就…

力扣 LeetCode 236. 二叉树的最近公共祖先(Day10:二叉树)

解题思路&#xff1a; 后序遍历 注意&#xff1a; p和q其中一个就是它们的公共祖先的情况也考虑到了&#xff0c;假设q是公共祖先&#xff0c;遇到q就直接返回&#xff0c;相当于是下面一边为空&#xff0c;一边不为空的情况&#xff0c;返回不为空就一边即可 class Solutio…

前端速通(HTML)

1. HTML HTML基础&#xff1a; 什么是HTML&#xff1f; 超文本&#xff1a; "超文本"是指通过链接连接不同网页或资源的能力。HTML支持通过<a>标签创建超链接&#xff0c;方便用户从一个页面跳转到另一个页面。 标记语言&#xff1a; HTML使用一组预定义的标签…

论文阅读——Performance Evaluation of Passive Tag to Tag Communications(一)

文章目录 摘要一、互耦对监听器标签输入阻抗的影响A. 无限细偶极子互阻抗的理论研究B. 电细偶极子的情况&#xff1a;理论与模拟C. 印刷偶极子的情况&#xff1a;电磁模拟与测量 二、T2T 通信系统的性能评估总结 论文来源&#xff1a;https://ieeexplore.ieee.org/document/970…

Palo Alto Networks PAN-OS身份认证绕过漏洞复现(CVE-2024-0012)

0x01 产品描述: PAN-OS 是运行 Palo Alto Networks 下一代防火墙的软件。通过利用 PAN-OS 本机内置的关键技术(App-ID、Content-ID、设备 ID 和用户 ID),可以在任何时间、任何地点完全了解和控制所有用户和设备中正在使用的应用程序。0x02 漏洞描述: PAN-OS 设备管理 Web …

使用ENSP实现静态路由

一、双路由器静态路由 1.项目拓扑 2.项目实现 (1)路由器AR1配置 进入系统试图 sys将路由器命名为R1 sysname R1进入g0/0/0接口 int g0/0/0将g0/0/0接口IP地址配置为1.1.1.1/24 ip address 1.1.1.1 24进入g0/0/1接口 int g0/0/1将g0/0/1接口IP地址配置为192.168.1.1/24 ip ad…

Claude3.5-Sonnet和GPT-4o怎么选(附使用链接)

随着人工智能模型的不断进化&#xff0c;传统的评估标准已经逐渐变得陈旧和不再适用。以经典的“喝水测试”为例&#xff0c;过去广泛应用于检测模型能力&#xff0c;但现如今即便是国内的一些先进模型&#xff0c;也能够轻松答对这些简单的问题。因此&#xff0c;我们亟需引入…

uniapp+vue3+ts H5端使用Quill富文本插件以及解决上传图片反显的问题

uniappvue3ts H5端使用Quill富文本插件以及解决上传图片反显的问题 1.在项目中安装Quill npm i quill1.3.72.需要显示富文本的页面完整代码 <template><view><div ref"quillEditor" style"height: 65vh"></div></view> &…

QML —— 3种等待指示控件(附源码)

效果如下 说明 BusyIndicator应用于指示在加载内容或UI被阻止等待资源可用时的活动。BusyIndicator类似于一个不确定的ProgressBar。两者都可以用来指示背景活动。主要区别在于视觉效果,ProgressBar还可以显示具体的进度(当可以确定时)。由于视觉差异,繁忙指示器和不确定的…