R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验

一般统计方法R实现

文章目录

  • 一、读入数据
  • 二、连续性变量
    • 1.正态性和方差齐性检验
    • 2.描述统计量
    • 3.独立样本t检验和wilcoxon秩和检验
  • 三、四格表卡方或fisher精确检验(OR【95%CI】)
    • 1.计算各组频数和相对频率
    • 2.整理数据进行检验
  • 总结


一、读入数据

library(readxl)
data<- read_excel("E:/Rworkplace/ae/data.xlsx")
pacman::p_load(tidyr)

R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验_第1张图片
共包括五个变量:group为分组变量,BMI、score为连续型变量,infection、ae为分类变量。

二、连续性变量

1.正态性和方差齐性检验

代码如下:

tapply(data$BMI,data$group,shapiro.test)
tapply(data$score,data$group,shapiro.test)

#方差齐性检验
library(car) #调用程序包car
library(carData) #载入程序包carData
leveneTest(data$BMI,data$group,center=mean)
leveneTest(data$score,data$group,center=mean)

发现BMI变量满足正态性和方差齐性,score不满足正态性。则两组BMI指标比较采用独立t检验,两组score指标比较采用wilcoxon检验。

2.描述统计量

代码如下:

#一般信息均数±标准差
library(dplyr)
group_by(data, group) %>%
  summarise(
    count = n(),
    mean = mean(BMI, na.rm = TRUE),
    sd = sd(BMI, na.rm = TRUE)
  )
  #中位数(四分位数)
tapply(data$score,data$group,quantile)

R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验_第2张图片

3.独立样本t检验和wilcoxon秩和检验

代码如下:

t.test(BMI ~ group, data = data, var.equal = TRUE)
wilcox.test(score ~ group, data = data, paired =FALSE)

R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验_第3张图片

三、四格表卡方或fisher精确检验(OR【95%CI】)

1.计算各组频数和相对频率

代码如下:

xtabs(~data$group+data$ae,data = data)
xtabs(~data$group+data$infection,data = data)
prop.table(xtabs(~data$group+data$ae,data = data),margin = 1)
prop.table(xtabs(~data$group+data$infection,data = data),margin = 1)

R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验_第4张图片

2.整理数据进行检验

#ae进行卡方检验
total <-c(20,20)
prop <- c(3,6)
prop.test(prop, total)
pacman::p_load(fmsb)
oddsratio(3,17,6,14)#显示OR值

R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验_第5张图片

#infection fisher精确概率法
table=matrix(c(1,3,19,17),nrow=2)
colnames(table)=c("有","无")
rownames(table)=c("试验组","对照组")
table
prop.table(table,margin = 1)
fisher.test(table)

R 两组样本t检验 wilcoxon检验、卡方、fisher精确检验_第6张图片


总结

对连续性变量及四格表常用统计检验R操作进行了梳理。

你可能感兴趣的:(R实践,r语言)