我用的是芯片的矩阵,用Vlookup将基因与探针ID做了注释,发现存在大量的多个探针对应一个基因的情况。现在请大神帮忙,写个能够直接单独运行R脚本来对同个基因多个探针取平均值的。因为自己试了已有的代码,总是出错,现请高手帮忙。
下面这个是截取的,无法独运行。
#多个探针对应1个基因的情况,取平均值
gene_exp_matrix<-apply(exp_matrix,2,function(x) tapply(x,geneidfactor,mean))
#geneid作为行名
rownames(gene_exp_matrix)<-levels(geneidfactor)
geneid<-rownames(gene_exp_matrix)
gene_exp_matrix2<-cbind(geneid,gene_exp_matrix)
write.table(gene_exp_matrix2,file="geneid-exprs.txt",sep='\t',quote=F,row.names=F)