【R语言】t检验

news/2025/2/12 12:11:00/

t检验(t-test)是用于比较两个样本均值是否存在显著差异的一种统计方法。

t.test()函数的调用格式:

t.test(x, y=NULL, alternative=c("two.sided", "less", "greater"), mu=0, paired=FALSE, var.equal=FALSE, conf.level=0.95, ...)

参数详解:

  1. x:用于均值比较的数值向量。
  2. y:用于均值比较的数值向量。当y=NULL时,表示为单样本t检验。
  3. alternative:表示指定假设检验的备择检验类型。two.sided:双侧检验(默认);less:左侧检验(备择假设为样本均值小于mu);greater:右侧检验(备择假设为样本均值大于mu)。
  4. mu:一个对比用的数值,默认为0。当检验为单样本t检验时,表示x所代表的总体均值是否与mu中指定的值相等;当检验为双样本t检验时,表示x和y代表的总体均值之差是否与mu中指定的值相等。
  5. pair:逻辑值,指定是否为配对样本,默认为FALSE,即独立样本。
  6. var.equal:逻辑值,指定两个样本的方差是否相等(默认为TRUE,即假设方差相等;如果方差可能不相等,应设置为FALSE以执行Welch t检验)
  7. conf.level:置信区间的置信水平。

一、单样本t检验

单样本t检验(One-Sample t-Test)用于比较一个样本的均值与已知的总体均值是否存在显著差异。

sample_data <- c(5.1, 4.8, 5.0, 5.3, 4.9)# 总体均值
mu <- 5.0# 执行单样本t检验
t.test(sample_data, mu = mu)

二、独立样本t检验

独立样本t检验(Independent Two-Sample t-Test)用于比较两个独立样本的均值是否存在显著差异。

group1 <- c(5.1, 4.8, 5.0, 5.3, 4.9)
group2 <- c(5.5, 5.2, 5.4, 5.6, 5.0)# 执行独立样本t检验, 假设两组数据之间无差异
t.test(group1, group2, alternative="two.sided", var.equal = T)

 使用R语言中内置的数据集InsectSprays,检验杀虫剂C与杀虫剂D的效果差异。

head(InsectSprays)
library(dplyr)
# 筛选杀虫剂C和D
data1 <- dplyr::filter(InsectSprays, spray %in% c("C", "D"))
# 独立样本t检验:假设使用杀虫剂C后的昆虫数目比使用杀虫剂D后的少
t.test(count ~ spray, data1, alternative="less", var.equal=T)

从以下结果可知,使用杀虫剂C后的昆虫数目(2.08)显著(P=0.0027<0.05)小于使用杀虫剂D后的昆虫数目(4.917),即杀虫剂C的效果比D好。 

 


http://www.ppmy.cn/news/1571412.html

相关文章

git 克隆指定 tag 的项目

git 克隆指定 tag 的项目 一、克隆指定tag的项目二、验证克隆结果 一、克隆指定tag的项目 以 tinyxml2项目 为例说明&#xff1a; git clone --branch V10.0.0 https://github.com/leethomason/tinyxml2.git解释&#xff1a; git clone&#xff1a;这是克隆一个远程仓库的命…

大数据项目7:基于大数据的天气数据分析和可视化系统

项目简介 本项目主要研究的内容是基于大数据分析和挖掘的技术&#xff0c;结合海量的天气数据&#xff0c;对异常灾害数据进行分析和预测&#xff0c;发现异常气象中的规律。当下大数据的技术正在高速发展&#xff0c;并且在教育&#xff0c;金融&#xff0c;农业&#xff0c…

深度学习入门:搭建你的第一个神经网络

在当今数字化时代,深度学习正以前所未有的速度改变着我们的生活。从语音助手到自动驾驶汽车,从图像识别到自然语言处理,深度学习的应用无处不在。而Python作为一门简洁而强大的编程语言,成为了深度学习领域最受欢迎的工具之一。今天,我们将一起踏上深度学习的旅程,搭建你…

Dockerfiles 的 Top 10 常见 DevOps/SRE 面试问题及答案

1. RUN 和 CMD 之间有什么区别&#xff1f; RUN : 在镜像构建过程中执行命令&#xff0c;创建一个新的层。通常用于安装软件包。 示例: RUN apt-get update && apt-get install -y curlCMD : 指定容器启动时默认运行的命令。它在运行时执行&#xff0c;而不是在构建过程…

Java+vue前后端分离项目集群部署

一、项目概述 假设我们有一个前后端分离的项目&#xff0c;前端使用React或Vue框架&#xff0c;后端使用Spring Boot或Node.js。我们将分别部署前端和后端到集群环境中。 二、准备工作 1. 代码准备&#xff1a;确保前端和后端代码已经开发完成&#xff0c;并通过本地测试。 2…

USB子系统学习(四)用户态下使用libusb读取鼠标数据

文章目录 1、声明2、HID协议2.1、描述符2.2、鼠标数据格式 3、应用程序4、编译应用程序5、测试6、其它 1、声明 本文是在学习韦东山《驱动大全》USB子系统时&#xff0c;为梳理知识点和自己回看而记录&#xff0c;全部内容高度复制粘贴。 韦老师的《驱动大全》&#xff1a;商…

MyBatis-Plus-Join (MPJ) 框架介绍

MyBatis-Plus-Join (MPJ) 框架介绍 MyBatis-Plus-Join (MPJ) 是一个基于 MyBatis-Plus 的多表关联查询框架&#xff0c;它提供了一种优雅的方式来处理复杂的表关联查询。 主要特性 Lambda 式查询 wrapper.selectAs(Teacher::getId, TeacherLeaveVO::getTeacherId).leftJoin(C…

4.python+flask+SQLAlchemy+达梦数据库

前提 1.liunx Centos7上通过docker部署了达梦数据库。从达梦官网下载的docker镜像。(可以参考前面的博文) 2.windows上通过下载x86,win64位的达梦数据库,只安装客户端,不安装服务端。从达梦官网下载达梦数据库windows版。(可以参考前面的博文) 这样就可以用windows的达…