生信喵 发表于 2022-9-4 18:31:56

独立性t检验

一、t 检验与 wilcox 检验
       连续型变量独立性检验,如果数据分布满足正太分布可以使用t检验,否则使用wilcox检验。
       基因表达差异:基因表达量高低。
dta <- read.csv("heatmap.csv",header = T,row.names = 1)

# 单个基因t检验
head(dta,1)
dta
dta
t.test(dta,dta)
y <- t.test(dta,dta)
class(y)
str(y)
for (i in 1:30) {
y <- t.test(dta,dta)$p.value
print(y)
}
apply(dta, 1, function(x){t.test(x,x)$p.value})
apply(dta, 1, function(x){t.test(x,x,paired = T)$p.value})
apply(dta, 1, function(x){wilcox.test(x,x,paired = T)$p.value})

#计算Qvalue,多重假设检验
p.adjust.methods
p <- apply(dta, 1, function(x){t.test(x,x)$p.value})
p.adjust(p)
p.adjust(p,'holm')
p.adjust(p,'fdr')
library(pheatmap)
pheatmap(dta)
p

二、利用 t 检验验证实验结果
#探索数据nrow(),ncol(),rownames(),colnames()
head(ToothGrowth)
str(ToothGrowth)
colnames(ToothGrowth)
boxplot(len~supp:dose,data = ToothGrowth,col = c('orange','yellow'))
x <- ToothGrowth
nrow(x)
ncol(x)
#统计频数
table(x$supp)
table(x$dose)
table(x$supp,x$dose)
#分组t检验
t.test(x[(x$supp=="VC" & x$dose==0.5),]$len,x[(x$supp=="OJ" & x$dose==0.5),]$len,paired = F)
t.test(x[(x$supp=="VC" & x$dose==1),]$len,x[(x$supp=="OJ" & x$dose==1),]$len,paired = F)
t.test(x[(x$supp=="VC" & x$dose==2),]$len,x[(x$supp=="OJ" & x$dose==2),]$len,paired = F)

页: [1]
查看完整版本: 独立性t检验