Cybersort实战
2020-02-05 本文已影响0人
多啦A梦詹
Cybersort实战
测试数据从github上下载HP.eset.csv,还需要一个参考矩阵和cybersort脚本
测试之前需要安装limma,parallel,e1071三个包。
1. 获得rownames唯一的矫正的表达矩阵
setwd("D:\\R\\liwei\\cibersort")
library(limma)
rt=read.table("HP.eset.csv",sep=",",header=T,check.names=F,row.names = 1) #如果rownames不是unique,我们要unique一下
rt<-log2(rt+0.0001)
data=rt[rowMeans(rt)>0,]
v <-voom(data, plot = F, save.plot = F) #对数据进行预处理,标准化,矫正,芯片数据最好,也可以FPKM
out=v$E
out=rbind(ID=colnames(out),out)
write.table(out,file="uniq.symbol.txt",sep="\t",quote=F,col.names=F) #得到rownames唯一的矫正之后的表达矩阵
2. 获取22种免疫细胞组成表达矩阵
source("tcgaTMB.CIBERSORT.R")
results=CIBERSORT("ref.txt", "uniq.symbol.txt", perm=100, QN=TRUE) #根据第一步生成的uniq.symbol.txt和下载的ref.txt,可以得到结果