前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言入门之t检验(t test)

R语言入门之t检验(t test)

作者头像
生信与临床
发布2020-08-06 09:45:09
6.4K0
发布2020-08-06 09:45:09
举报

R语言提供t.test()函数可以进行各种各样的t检验。与其他统计包不同的是,t.test()函数默认数据是异方差的,并采用Welch方法矫正自由度,关于异方差和Welch方法我会在后续的内容中详细介绍,大家先有一个印象即可。

在这里我将利用R里内置的鸢尾花数据集(iris)向大家展示如何进行t检验,这里iris数据集是由150朵鸢尾花的花瓣长度、花瓣宽度、花萼长度、花萼宽度以及鸢尾花种类组成。

代码语言:javascript
复制
setosa <- iris[which(iris$Species=='setosa'),] #提取setosa类的鸢尾花
versicolor <- iris[which(iris$Species=='versicolor'),] #提取versicolor类的鸢尾花
mydata <- rbind(setosa,versicolor) #按行合并数据集
# 独立双样本t检验
t.test(y~x) # y是一个数值型向量,而x是一个二分类变量
t.test(mydata$Sepal.Length~mydata$Species) #检验不同鸢尾花花萼长度差异

从这里我们可以看出两种不同的鸢尾花(setosa和versicolor)在花萼长度上有显著的差异(p-value < 2.2e-16),同时可以看出setosa的花萼比较短(mean=5.006)。

代码语言:javascript
复制
# 独立双样本t检验
t.test(y1,y2) # y1和y2均为数值型向量
t.test(setosa$Sepal.Length, versicolor$Sepal.Length) #检验不同鸢尾花花萼长度差异
代码语言:javascript
复制
# 配对t检验
t.test(y1,y2,paired=TRUE) # y1和y2均为数值型向量
# 单样本t检验
t.test(y,mu=3) # 原假设H0:mu=3(mu就是指总体的均值)
# 这里就不赘述配对t检验和单样本t检验,它们的使用方法和两独立样本t检验类似,只是分别多了参数paired=TRUE和mu=3。

当然,在这里你也可以设置参数var.equal=TURE,指定样本之间是等方差的,也可以通过alternative=这个参数来指定单侧检验。

现在我们以两独立样本t检验为例看看同方差和单侧检验和前面的结果有何区别:

代码语言:javascript
复制
t.test(Sepal.Length~Species,var.equal=TRUE) #检验不同鸢尾花花萼长度差异

可以看出,这里的自由度df=98和之前的自由度df=86.538是不一样的,因为Welch主要通过调整自由度来矫正异方差性。

代码语言:javascript
复制
t.test(Sepal.Length~Species,alternate= "greater") #检验不同鸢尾花花萼长度差异

好了,关于t检验的内容就分享到这里,大家先学会如何使用R进行t检验分析即可,后续我会介绍相关理论!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信与临床 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档