问题:单基因泛癌分析做TMB肿瘤突变负荷的时候发现输出的两个文件是空文件,但是没有任何报错
我尝试的解决:感觉是for循环的问题,但是不确定,看不出来
请各位帮忙看看
setwd("D:\biowolf\panCancer\15.TMBcor") #设置工作目录
#读取表达文件
exp=read.table("singleGeneExp.txt", header=T,sep="\t",row.names=1,check.names=F)
#读取TMB文件
TMB=read.table("TMB.txt", header=T,sep="\t",row.names=1,check.names=F)
#去除正常样品
group=sapply(strsplit(row.names(exp),"\-"),"[",4)
group=sapply(strsplit(group,""),"[",1)
group=gsub("2","1",group)
exp=exp[group==0,]
#样品取交集
sameSample=intersect(row.names(TMB),row.names(exp))
TMB=TMB[sameSample,]
exp=exp[sameSample,]
#相关性检验
outTab=data.frame()
fmsbTab=data.frame()
for(i in levels(exp[,"CancerType"])){
exp1=exp[(exp[,"CancerType"]==i),]
TMB1=TMB[(TMB[,"CancerType"]==i),]
x=as.numeric(TMB1[,1])
y=as.numeric(exp1[,1])
corT=cor.test(x,y,method="spearman")
cor=corT$estimate
pValue=corT$p.value
sig=ifelse(pValue<0.001,"",ifelse(pValue<0.01,"",ifelse(pValue<0.05,""," ")))
outTab=rbind(outTab,cbind(CancerType=i,cor=cor,pValue=pValue,sig))
fmsbTab=rbind(fmsbTab,cbind(CancerType=i,cor=cor))
}
write.table(outTab,file="corStat.txt",sep="\t",row.names=F,quote=F)
write.table(t(fmsbTab),file="fmsbInput.txt",sep="\t",col.names=F,quote=F)