TIMER20和cibersort一個(gè)既能分析測(cè)序數(shù)據(jù)(最好是TPM格式)翔冀,又能分析芯片數(shù)據(jù)的網(wǎng)站

細(xì)胞免疫浸潤網(wǎng)站使用

1.cibersort

數(shù)據(jù)輸入格式:輸入數(shù)據(jù)的要求: 1.不可以有負(fù)值和缺失值 2.不要取log 3.如果是芯片數(shù)據(jù)摊阀,昂飛芯片使用RMA標(biāo)準(zhǔn)化人断,Illumina 的Beadchip 和Agilent的單色芯片吭从,用limma處理。 4.如果是RNA-Seq表達(dá)量恶迈,使用FPKM和TPM都很合適涩金。芯片的要求可能把你唬住了,GEO常規(guī)的表達(dá)矩陣都是這樣得到的暇仲,直接下載使用即可步做。注意有的表達(dá)矩陣下載下來就已經(jīng)取過log,需要逆轉(zhuǎn)回去奈附。有的經(jīng)過了標(biāo)準(zhǔn)化或者有負(fù)值全度,需要處理原始數(shù)據(jù),前面寫過介紹文:

http://www.reibang.com/p/d7035ba8347b

http://www.reibang.com/p/e3d734b2c404

做成cibersort要求的輸入文件

這個(gè)算法并沒有被寫成R包斥滤,而是只有一個(gè)放著函數(shù)的腳本–CIBERSORT.R将鸵,把它下載下來放在工作目錄即可。

需要兩個(gè)輸入文件:

一個(gè)是表達(dá)矩陣文件

一個(gè)是官網(wǎng)提供的LM22.txt佑颇,記錄了22種免疫細(xì)胞的基因表達(dá)特征數(shù)據(jù)咨堤。三個(gè)輸入文件的要求及形式,參考以下網(wǎng)址:

http://www.reibang.com/p/0baac4c52ac8

由于CIBERSORT.R讀取文件的代碼比較粗暴漩符,為了適應(yīng)它,導(dǎo)出文件之前需要把行名變成一列驱还。不然后面就會(huì)有報(bào)錯(cuò)嗜暴。

exp2=as.data.frame(tpms)

exp2=rownames_to_column(exp2)

write.table(exp2,file="exp.txt",row.names=F,quote=F,sep="\t")

source("CIBERSORT.R")

if(F){

? TME.results = CIBERSORT("LM22.txt",

? ? ? ? ? ? ? ? ? ? ? ? ? "exp.txt" ,

? ? ? ? ? ? ? ? ? ? ? ? ? perm = 1000,

? ? ? ? ? ? ? ? ? ? ? ? ? QN = T)

? save(TME.results,file = "ciber_CHOL.Rdata")

}

load("ciber_CHOL.Rdata")

TME.results[1:4,1:4]

## B cells naive B cells memory Plasma cells

## TCGA-W5-AA36-01A-11R-A41I-07 0.00000000 0.002351185 0.02550133

## TCGA-W5-AA2H-01A-31R-A41I-07 0.04512086 0.354414124 0.01961627

## TCGA-ZU-A8S4-11A-11R-A41I-07 0.00203370 0.000000000 0.04582565

## TCGA-WD-A7RX-01A-12R-A41I-07 0.15785229 0.000000000 0.01847074

## T cells CD8

## TCGA-W5-AA36-01A-11R-A41I-07 0.07766099

## TCGA-W5-AA2H-01A-31R-A41I-07 0.14262301

## TCGA-ZU-A8S4-11A-11R-A41I-07 0.09962641

## TCGA-WD-A7RX-01A-12R-A41I-07 0.13769951

re <- TME.results[,-(23:25)]

運(yùn)行有些慢。計(jì)算出來的結(jié)果包含了22種免疫細(xì)胞的豐度议蟆,還有三列其他統(tǒng)計(jì)量闷沥,不管它們。

3.5. 經(jīng)典的免疫細(xì)胞豐度熱圖

那些在一半以上樣本里豐度為0的免疫細(xì)胞咐容,就不展示在熱圖里了舆逃。我看了一下這個(gè)熱圖,從聚類的情況來看戳粒,normal和tumor沒有很好的分開路狮。

library(pheatmap)k<-apply(re,2,function(x){sum(x==0)<nrow(TME.results)/2})table(k)

## k## FALSE? TRUE ##? ? 8? ? 14

re2<-as.data.frame(t(re[,k]))an=data.frame(group=Group,row.names=colnames(exp))pheatmap(re2,scale="row",show_colnames=F,annotation_col=an,color=colorRampPalette(c("navy","white","firebrick3"))(50))

3.6. 直方圖

可以展示出每個(gè)樣本的免疫細(xì)胞比例

library(RColorBrewer)

mypalette<-colorRampPalette(brewer.pal(8,"Set1"))

dat<-re%>%as.data.frame()%>%

rownames_to_column("Sample")%>%

gather(key=Cell_type,value=Proportion,-Sample)

ggplot(dat,aes(Sample,Proportion,fill=Cell_type))+

geom_bar(stat="identity")+labs(fill="Cell Type",x="",y="Estiamted Proportion")+

theme_bw()+

theme(axis.text.x=element_blank(),axis.ticks.x=element_blank(),legend.position="bottom")+

scale_y_continuous(expand=c(0.01,0))+

scale_fill_manual(values=mypalette(22))

3.7 箱線圖

展示免疫細(xì)胞之間的比較。

ggplot(dat,aes(Cell_type,Proportion,fill=Cell_type))+

geom_boxplot(outlier.shape=21,color="black")+

theme_bw()+labs(x="Cell Type",y="Estimated Proportion")+

theme(axis.text.x=element_blank(),axis.ticks.x=element_blank(),legend.position="bottom")+

scale_fill_manual(values=mypalette(22))

亂了點(diǎn)蔚约?那就讓箱線圖擁有順序吧奄妨。

a = dat %>%? group_by(Cell_type) %>%? summarise(m = median(Proportion)) %>%? arrange(desc(m)) %>%? pull(Cell_type)dat$Cell_type = factor(dat$Cell_type,levels = a)

ggplot(dat,aes(Cell_type,Proportion,fill = Cell_type)) +? geom_boxplot(outlier.shape = 21,color = "black") +??

?theme_bw() +??

?labs(x = "Cell Type", y = "Estimated Proportion") +? ?

?theme(axis.text.x = element_blank(),? ? ? ??

axis.ticks.x = element_blank(),? ? ? ??

legend.position = "bottom") +?

?scale_fill_manual(values = mypalette(22))

既然我們已經(jīng)把正常樣本也算了,那就做個(gè)比較:

dat$Group = ifelse(as.numeric(str_sub(dat$Sample,14,15))<10,"tumor","normal")

library(ggpubr)

ggplot(dat,aes(Cell_type,Proportion,fill = Group)) +? geom_boxplot(outlier.shape = 21,color = "black") +??

?theme_bw() +? labs(x = "Cell Type", y = "Estimated Proportion") +? theme(legend.position = "top") +??

?theme(axis.text.x = element_text(angle=80,vjust = 0.5))+? scale_fill_manual(values = mypalette(22)[c(6,1)])+ stat_compare_means(aes(group = Group,label = ..p.signif..),method = "kruskal.test")

2.TImer2.0

腫瘤微環(huán)境中免疫細(xì)胞的組成和豐度是影響腫瘤進(jìn)展和免疫治療效果的重要因素苹祟。由于直接測(cè)量方法的局限性砸抛,計(jì)算算法通常用于從腫瘤轉(zhuǎn)錄組圖譜推斷免疫細(xì)胞組成评雌。這些估計(jì)的腫瘤免疫浸潤人群與腫瘤的基因組和轉(zhuǎn)錄組學(xué)變化相關(guān),提供了對(duì)腫瘤免疫相互作用的見解直焙。今天我們就一起來看這個(gè)腫瘤免疫分析的又一神器——TIMER 2.0數(shù)據(jù)庫(開始的頁面就已經(jīng)有數(shù)據(jù)格式要求景东,注意看)。具體操作如下:


https://zhuanlan.zhihu.com/p/367363990

http://www.sci666.net/59270.html

https://www.jingege.wang/2021/09/27/%E7%A0%94%E7%A9%B6%E5%85%8D%E7%96%AB%E6%B5%B8%E6%B6%A6%E7%9A%84%E7%A5%9E%E5%99%A8timer%E6%9B%B4%E6%96%B0-timer2-0/

3.xcell

http://www.reibang.com/p/a20a534233aa

4.ESTIMATE

腫瘤微環(huán)境中奔誓,免疫細(xì)胞和基質(zhì)細(xì)胞是兩種主要肺腫瘤細(xì)胞類型斤吐;而ESTIMATE,利用表達(dá)譜數(shù)據(jù)來預(yù)測(cè)基質(zhì)細(xì)胞和免疫細(xì)胞評(píng)分丝里,進(jìn)而預(yù)測(cè)這兩種細(xì)胞的含量曲初;最后可以計(jì)算每個(gè)腫瘤樣本里面的腫瘤純度了,也就是說杯聚,基質(zhì)細(xì)胞和免疫細(xì)胞含量多臼婆,那腫瘤純度低,反之腫瘤純度就高了幌绍。

可能對(duì)RNA-Seq數(shù)據(jù)的預(yù)測(cè)不是很準(zhǔn)颁褂,芯片數(shù)據(jù)還可以。

代碼參考:http://www.reibang.com/p/b64e9f338f8b


另一種分析方法網(wǎng)頁+代碼參考:https://zhuanlan.zhihu.com/p/404707114

https://zhuanlan.zhihu.com/p/136747705

整理的代碼及注意事項(xiàng)

http://www.reibang.com/p/ec5307256ca5

library(utils)rforge<-"http://r-forge.r-project.org"

install.packages("estimate",repos=rforge,dependencies=TRUE)

library(estimate)

初步運(yùn)行自帶的測(cè)試數(shù)據(jù)

library(estimate)

OvarianCancerExpr<system.file("extdata","sample_input.txt",package="estimate")

filterCommonGenes(input.f=OvarianCancerExpr,output.f="OV_10412genes.gct",id="GeneSymbol")

estimateScore(input.ds="OV_10412genes.gct",output.ds="OV_estimate_score.gct",platform="affymetrix")

plotPurity(scores="OV_estimate_score.gct",samples="s519",platform="affymetrix")

從測(cè)試數(shù)據(jù)可以看出傀广,設(shè)置好工作路徑后颁独,將.txt文件直接放在當(dāng)前工作目錄下,就可以不跑OvarianCancerExpr伪冰,直接跑filterCommonGenes誓酒,因?yàn)榭梢栽O(shè)置input.f=xxx.txt。

數(shù)據(jù)格式如圖1:

圖. 1

完整代碼

setwd("E:/1.RStudio/geo_ovarian_GPL96_570/geo_array_ovarian/OVCP3")

library(utils)

rforge <- "http://r-forge.r-project.org"

install.packages("estimate", repos=rforge, dependencies=TRUE)

library(estimate)

###提前將Exp0放在當(dāng)前工作目錄下

filterCommonGenes(input.f="Exp0.txt",

? ? ? ? ? ? ? ? ? output.f="OV_6934genes.gct",

? ? ? ? ? ? ? ? ? id="GeneSymbol")

estimateScore(input.ds = "OV_6934genes.gct",

? ? ? ? ? ? ? output.ds="OV_estimate_score.gct",

? ? ? ? ? ? ? platform="affymetrix")

plotPurity(scores="OV_estimate_score.gct",

? ? ? ? ? platform="affymetrix")

###########結(jié)果讀取和導(dǎo)出方式

scores=read.table("OV_estimate_score.gct",skip = 2,header = T)

rownames(scores)=scores[,1]

scores=t(scores[,3:ncol(scores)])

View(scores)

save(scores,file = 'BRCA_estimate_score.Rdata')

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末贮聂,一起剝皮案震驚了整個(gè)濱河市靠柑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌吓懈,老刑警劉巖歼冰,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異耻警,居然都是意外死亡隔嫡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門甘穿,熙熙樓的掌柜王于貴愁眉苦臉地迎上來腮恩,“玉大人,你說我怎么就攤上這事温兼∏炀荆” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵妨托,是天一觀的道長缸榛。 經(jīng)常有香客問我吝羞,道長,這世上最難降的妖魔是什么内颗? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任钧排,我火速辦了婚禮,結(jié)果婚禮上均澳,老公的妹妹穿的比我還像新娘恨溜。我一直安慰自己,他們只是感情好找前,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布糟袁。 她就那樣靜靜地躺著,像睡著了一般躺盛。 火紅的嫁衣襯著肌膚如雪项戴。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天槽惫,我揣著相機(jī)與錄音周叮,去河邊找鬼。 笑死界斜,一個(gè)胖子當(dāng)著我的面吹牛仿耽,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播各薇,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼项贺,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了峭判?” 一聲冷哼從身側(cè)響起敬扛,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎朝抖,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體谍珊,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡治宣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了砌滞。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片侮邀。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖贝润,靈堂內(nèi)的尸體忽然破棺而出绊茧,到底是詐尸還是另有隱情,我是刑警寧澤打掘,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布华畏,位于F島的核電站鹏秋,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏亡笑。R本人自食惡果不足惜侣夷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望仑乌。 院中可真熱鬧百拓,春花似錦、人聲如沸晰甚。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽厕九。三九已至蓖捶,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間止剖,已是汗流浹背腺阳。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留穿香,地道東北人亭引。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像皮获,于是被迫代替她去往敵國和親焙蚓。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 0228 1.some refernce materialR CookbookR in Actionggplot2...
    TX_ab85閱讀 738評(píng)論 0 0
  • CIBERSORT的注意事項(xiàng) CIBERSORT的使用洒宝,我們舉了幾個(gè)例子购公,但是還有一些疑問,只要有疑問在雁歌,就感覺心...
    Seurat_Satija閱讀 18,762評(píng)論 1 33
  • preparation: use library() to load the package and use st...
    搬磚肥宅閱讀 1,333評(píng)論 0 1
  • 16宿命:用概率思維提高你的勝算 以前的我是風(fēng)險(xiǎn)厭惡者宏浩,不喜歡去冒險(xiǎn),但是人生放棄了冒險(xiǎn)靠瞎,也就放棄了無數(shù)的可能比庄。 ...
    yichen大刀閱讀 6,033評(píng)論 0 4
  • 公元:2019年11月28日19時(shí)42分農(nóng)歷:二零一九年 十一月 初三日 戌時(shí)干支:己亥乙亥己巳甲戌當(dāng)月節(jié)氣:立冬...
    石放閱讀 6,870評(píng)論 0 2