这里给出来一个利用R语言分析样品之间的t检验和秩和检验的一个例子,先贴出来代码,后面再解释
具体代码如下:
data<-read.table("test1.txt",header=TRUE) #data<-read.csv("GSE32424_RPKM.csv",header=TRUE) #这里读入数据
n<-c(1:nrow(data)) #这里给一个索引,是写for语言的一个个人癖好,其实可以直接写到下面for里面去
p.t<-rep(NA,nrow(data)) #建立一个t检验的p值空向量
p.w<-rep(NA,nrow(data)) #建立一个秩和检验的p值空向量,里面赋的是NA
for ( i in n){
p.w[i]<- wilcox.test(as.numeric(data[i,2:6]),as.numeric(data[i,7:11]))
$p.value; #p.w里面输入值
p.t[i] <-t.test(data[i,2:6],data[i,7:11])$p.value; #p.t赋值
}
p.w<-
as.numeric(p.w) #在操作的过程中发现秩和检验的包输出来不是列表的形式,这里变成列表
fdr.w<-p.adjust(p.w,method="fdr",length(p.w)) #p.adjust就是计算FDR的包,这个可要记得了
fdr.t<-p.adjust(p.t,method="fdr",length(p.t))
res<-cbind(data,p.t,fdr.t,p.w,fdr.w) #把结果合并起来
write.csv(res,file="res.csv") #输出csv文件
Gene 4N 5N 6N 8N9N 2T 3T 6T 8T9T
GAPDH 1811.13 1779.28 1180.25