腫瘤微環(huán)境(TME)是腫瘤細胞賴以生存和發(fā)展的復(fù)雜環(huán)境涂召,主要由細胞成分和非細胞成分組成浪感,共同構(gòu)成了復(fù)雜的腫瘤微環(huán)境吼和。免疫抑制微環(huán)境是腫瘤微環(huán)境中起抑制免疫功能的部分拉鹃,其組成包括免疫抑制性細胞和抑制性細胞因子擎值。
一慌烧、數(shù)據(jù)下載
在sets中搜索“gastric cancer survival”,然后篩選人類基因鸠儿,再篩選基因數(shù)目大于100屹蚊,再一個個點開看厕氨,數(shù)據(jù)集中的樣本要求為腫瘤,然后再點開樣本汹粤,其character滿足(tissue: gastric cancer age: 42 Sex: female ptstage: T4 pnstage: N1 death: 0 duration overall survival: 121)
本例中選擇GSE84433
打開平臺(平臺的作用在于將探針名和基因名一一對應(yīng))命斧,點擊”download full table”,下載整個表格,有時沒有下載鍵嘱兼,則查看整個圖標国葬,然后復(fù)制。
下載表達矩陣:在GSE84433 頁面最下面芹壕,點擊‘Series Matrix File(s)下載
二汇四、數(shù)據(jù)注釋
用perl 對下載的探針矩陣注釋為基因矩陣(這一步在電腦上失敗了)
在下載的探針矩(xls)中復(fù)制樣本的臨床數(shù)據(jù),只保留腫瘤數(shù)據(jù)踢涌,刪除正惩酰或者癌旁組織。
R軟件中提取免疫評分和基質(zhì)評分:
#library(utils)
#rforge <- "http://r-forge.r-project.org"
#install.packages("estimate", repos=rforge, dependencies=TRUE)
#if (!requireNamespace("BiocManager", quietly = TRUE))
#? ? install.packages("BiocManager")
#BiocManager::install("limma")
library(limma)
library(estimate)
setwd("C:\\Users\\lexb4\\Desktop\\geoEstimate\\05.estimate")? ? ? ? ? #設(shè)置工作目錄
inputFile="geneMatrix.txt"? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #輸入文件名字
#讀取文件
rt=read.table(inputFile,sep="\t",header=T,check.names=F)
#如果一個基因占了多行睁壁,取均值
rt=as.matrix(rt)
rownames(rt)=rt[,1]
exp=rt[,2:ncol(rt)]
dimnames=list(rownames(exp),colnames(exp))
data=matrix(as.numeric(as.matrix(exp)),nrow=nrow(exp),dimnames=dimnames)
data=avereps(data)
#讀取腫瘤樣品文件
sample=read.table("sample.txt",header=F,sep="\t",check.names=F)
data=data[,as.vector(sample[,1])]
#如果數(shù)值很大背苦,需要去除log函數(shù)這一行的#號
data=log2(data+1)
data=data[rowMeans(data)>0,]
out=normalizeBetweenArrays(data)
out=rbind(ID=colnames(out),out)
#輸出整理后的矩陣文件
write.table(out,file="normalize.txt",sep="\t",quote=F,col.names=F)
#運行estimate包
filterCommonGenes(input.f="normalize.txt",
? ? ? ? ? ? ? ? ? output.f="commonGenes.gct",
? ? ? ? ? ? ? ? ? id="GeneSymbol")
#計算免疫得分,平臺有三種選擇,根據(jù)自己的分析選擇("affymetrix", "agilent", "illumina")
estimateScore(input.ds = "commonGenes.gct",
? ? ? ? ? ? ? output.ds="estimateScore.gct",
? ? ? ? ? ? ? platform="affymetrix")
#輸出每個樣品的打分
scores=read.table("estimateScore.gct",skip = 2,header = T)
rownames(scores)=scores[,1]
scores=t(scores[,3:ncol(scores)])
scores=scores[,1:3]
out=rbind(ID=colnames(scores),scores)
write.table(out,file="scores.txt",sep="\t",quote=F,col.names=F)
得到腫瘤評分表格