R语言和医学统计学系列(1):t检验

本文首发于公众号:医学和生信笔记,完美观看体验请至公众号查看本文。

医学和生信笔记,专注R语言在临床医学中的使用,R语言数据分析和可视化。

前言

本期开始将推送使用R语言进行医学统计学的相关内容。

使用R语言进行统计学是我学习R语言最开始的初衷,没想到从此一发不可收拾,打开了新世界的大门。这个系列也是我最开始学习R语言时的笔记。希望对大家有帮助。

主要是用R语言复现课本中的例子。我使用的课本是孙振球主编的《医学统计学》第4版,封面如下:

在这里插入图片描述

t检验

t检验主要适用于1组或2组的均数的比较,要求数据符合正态性和方差齐性。关于t检验的本质问题本文不做过多探讨,只是学习如何用R语言实现t检验!

在R中进行t检验非常简单,就是 t.test()函数,不管是单样本、两样本都是这一个函数。使用R语言进行统计学比SPSS好的一点是,当你需要使用某种检验时,直接打出这个检验的名字一般就会跳出来相关的函数,而我在学习使用SPSS进行各种统计检验时,可能更多的是关注如何点点点(鼠标点击菜单),不利于记住哪种情况使用什么方法。

单样本t检验

使用课本例3-5的数据。

首先是读取数据,可以自己录入,也可以使用课本光盘里的数据,我这里直接使用了光盘里的数据。

# 使用foreign包读取SPSS数据

library(foreign)

df <- read.spss('E:/各科资料/医学统计学/研究生课程/3总体均数的估计与假设检验18-9研/例03-05.sav',to.data.frame = T)

head(df)

数据基本格式

数据一共两列,第1列是编号,第二列是血红蛋白值,一共有36行。

进行单样本t检验,并与140进行比较:

st <- t.test(df$hb,mu=140,alternative = 'two.sided') # 双侧检验

st


	One Sample t-test

data:  df$hb
t = -2.1367, df = 35, p-value = 0.03969
alternative hypothesis: true mean is not equal to 140
95 percent confidence interval:
 122.1238 139.5428
sample estimates:
mean of x 
 130.8333 

结果显示t=-2.1367,自由度df=35,p=0.03969,和课本一致。

配对样本t检验

使用课本例3-6的数据。

首先是读取数据。

library(foreign)

df <- read.spss('D:/各科资料/医学统计学/研究生课程/3总体均数的估计与假设检验18-9研/例03-06.sav',to.data.frame = T)

head(df)

数据情况

数据一共3列10行,第1列是样本编号,第2列和第3列是要比较的值。

进行配对样本t检验:

pt <- t.test(df$x1,df$x2,paired = T,var.equal = T) # 配对样本t检验

pt

    Paired t-test

data:  df$x1 and df$x2
t = 7.926, df = 9, p-value = 2.384e-05
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
 0.1946542 0.3501458
sample estimates:
mean of the differences 
                 0.2724 

结果显示t=7.926,自由度df=9,p<0.001,结果和课本一致。

两样本t检验

使用课本例3-7的数据。

首先是读取数据。

library(foreign)

df <- read.spss('E:/各科资料/医学统计学/研究生课程/3总体均数的估计与假设检验18-9研/例03-07.sav',to.data.frame = T)

df$group <- c(rep('阿卡波糖',20),rep('拜糖平',20))

head(df)

数据情况

一共有3列40行,第1列是编号,第2列是血糖值,第3列是组别(阿卡波糖组和拜糖平组,每组20个人)。

进行两样本t检验:

tt <- t.test(x ~ group, data = df, paired = F, var.equal = T) # 可以看到与配对样本t检验的写法稍有不同,其实都可以,主要是看数据结构

tt

   Two Sample t-test

data:  x by group
t = -0.64187, df = 38, p-value = 0.5248
alternative hypothesis: true difference in means between group 阿卡波糖 and group 拜糖平 is not equal to 0
95 percent confidence interval:
 -2.326179  1.206179
sample estimates:
mean in group 阿卡波糖   mean in group 拜糖平 
                 2.065                  2.625 

结果显示t=-0.64187,自由度df=38,p=0.5248,结果和课本一致。

以上就是使用R语言进行t检验的例子,希望对大家有帮助,如果有任何问题欢迎评论区留言或直接与我联系。

本文首发于公众号:医学和生信笔记,完美观看体验请至公众号查看本文。

医学和生信笔记,专注R语言在临床医学中的使用,R语言数据分析和可视化。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值