CIBERSORT:反卷積推測bulk中的細(xì)胞類型

五一學(xué)了一個新的分析方法-CIBERSORT,這個包其實很早就想學(xué)的永票,因為現(xiàn)在一般的單細(xì)胞文章的套路奖慌,很難不用到它,那么它能干什么呢西乖?它能夠推測出bulk RNA每一個樣本中各類細(xì)胞的比例狐榔。通俗易懂的來講,就是能夠把bulk RNA當(dāng)作single cell RNA來分析获雕。

實現(xiàn)把bulk RNA當(dāng)作single cell RNA來分析主要是有兩種算法反卷積ssgsea薄腻,而CIBERSORT就是基于反卷積算法來做的,所以這篇著重介紹反卷積算法届案。

1.什么是反卷積算法

要想了解什么是反卷積庵楷,我們就要了解什么是卷積,我先show一張圖楣颠,這張圖就展示了卷積的過程


8811c6671c9bf68acdbb6f8a5931f82.png

我想用一些比較容易懂的話來講卷積嫁乘,所以可能講述或隱喻的不準(zhǔn)確,望諒解G虻铩r迅!
根據(jù)這張圖我們可以看出 其實bulk RNAseq就像是每一個細(xì)胞的RNA-seq卷起來的乘積睁冬,所以稱為卷積(圖:左邊(bulk)是右邊(cell)的乘積運算的結(jié)果挎春,而這個乘積運算需要細(xì)胞的表達量和一個系數(shù)表)看疙,現(xiàn)在我們來解釋反卷積反卷積顧名思義反過來/不卷積,對bulkRNA的反卷積就相當(dāng)于對bulk RNA進行除法直奋,我們只要給一個系數(shù)表能庆,就可以得到細(xì)胞的RNA表達量,那么我們就可以知道bulk中有哪一些細(xì)胞類型了脚线。(其實沒有那么簡單哈搁胆,但是大致是這樣的,里面涉及到算法啥的我也不知道怎么解釋邮绿,主要是也不太會哈哈哈哈)

那么根據(jù)上面的解釋我們可以知道假如進行bulk RNA的反卷積渠旁,我們需要什么:
1.系數(shù)表
2.bulk RNA的表達矩陣(假如你是一個生信入門的人,你一定要注意這個船逮,表達矩陣顾腊,什么樣的表達矩陣,首先是芯片還是RNA-seq,再是count挖胃?fpkm杂靶?rpkm?cpm酱鸭?CIBERSORT說的很清楚吗垮,芯片或者RNA-seq都可以,參數(shù)上選擇不同而已凹髓,RNA-seq數(shù)據(jù)不建議直接使用Count烁登,應(yīng)使用FPKM和TPM或DESEq2標(biāo)準(zhǔn)化后的矩陣為宜)

2.用LM22-ref.txt文件進行反卷積分析

首先LM22-ref.txt文件是什么,這里要從免疫浸潤講起扁誓,免疫浸潤可以當(dāng)作腫瘤組織中全部免疫細(xì)胞的總和防泵,而LM22就是拿來分析免疫浸潤的蚀之,所以我們用excel打開來看看這個文件吧蝗敢,第一列是基因名字,后面每一列是某類細(xì)胞和他們gene symbol的系數(shù),所以這個LM22-ref.txt文件就是我們的系數(shù)表(關(guān)于這個表格怎么來的可以去看其他大神的文章)

de8b85e25a44e2cbf5b28effc168a77.png

這時候我們還缺我們的bulk RNA的表達矩陣足删,所以我們要擁有一個這樣的表格寿谴,把它保存為txt文件,命名為test.txt

687c63aabb3a45655d6fff217188670.png

為了確保大家保存沒有錯誤失受,大家也可以試一下用excel打開讶泰,看看是不是跟我的格式一樣
7659cb0bbc104d6523d47d1f2112469.png

好的,在這里總結(jié)一下拂到,LM22-ref.txt文件=系數(shù)表痪署,test.txt=bulk RNA的表達矩陣
并且這兩個文件要在我們的工作路徑下
由于CIBERSORT現(xiàn)在還不是R包,但是有CIBERSORT這個function(相當(dāng)于文章的預(yù)印版吧)兄旬,我們的工作路徑下還需要CIBERSORT這個function狼犯,而這個function可以到官網(wǎng)上下載(關(guān)于這個function怎么運行的,可以follow健明老師的文章,在這里你只要知道它就是反卷積悯森,幫我們計算出來了每一個樣本中的細(xì)胞類型的含量)宋舷,所以在工作工作路徑下有三個東西
CIBERSORT.R / LM22-ref.txt / test.txt
5632b56baa514b41fb61276c2931532.png

運行function

library(tibble)
library(ggplot2)
library(ggrepel)
library(tidyverse)
library('e1071')             #必須加載,因為后面反卷積的算法是基于這個包里的數(shù)據(jù)
source("CIBERSORT.R")  #激活function

results=CIBERSORT("LM22-ref.txt","test.txt", perm=1000, QN=TRUE)   #perm是循環(huán)次數(shù)  一般文章循環(huán)1000次瓢姻,QN=TRUE是分析RNA-seq祝蝠,假如為F則分析芯片數(shù)據(jù)

然后我們就可以得到這樣的result


2392a390d3cafb028a100abb4fa7638.png

2.個性化進行反卷積分析

何為個性化,就是當(dāng)我們在做單細(xì)胞分析的時候幻碱,自己定義了一個群或者定義了一些細(xì)胞绎狭,想看這種細(xì)胞類型在bulk中的含量該怎么辦呢,我怎么得到每一種細(xì)胞類型的系數(shù)呢收班?其實沒有那么復(fù)雜坟岔,細(xì)胞類型的系數(shù)表其實就是AverageExpression,所以我們可以這樣來做

library(tibble)
library(ggplot2)
library(ggrepel)
library(tidyverse)
library('e1071')             #必須加載摔桦,因為后面反卷積的算法是基于這個包里的數(shù)據(jù)
source("CIBERSORT.R")  #激活function

scRNA_harmony <- readRDS("scRNAsub.rds")  #導(dǎo)入單細(xì)胞數(shù)據(jù)
#先Idents
Idents(scRNA_harmony) <- "celltype"
#制作細(xì)胞類型的系數(shù)表
X <- AverageExpression(scRNA_harmony)[[1]]    #這就是我們要的細(xì)胞類型系數(shù)表
write.table(X,"sig.txt",sep = "\t",col.names = T,row.names = T)     #保存為sig.txt

results=CIBERSORT("sig.txt","test.txt", perm=1000, QN=TRUE)   #還是用那一個test.txt表達矩陣社付,同樣運行

后面附上sig.txt用excel打開后的樣子,以免大家報錯


d8c723735c3b1141a7648ce0037025d.png

在這里我需要強調(diào)邻耕,大家不要小看給出來的txt用excel打開后的格式鸥咖,因為這是報錯的主要原因,一定要跟我的格式一樣兄世,為什么呢啼辣,可以看CIBERSORT.R這個函數(shù)

c543a40d88090adf2ff8103eaede738.png

它要read in data,而且用read.table加了參數(shù)御滩,所以一定要格式符合它的輸入格式

寫在文末鸥拧,假如大家真的很想了解這個算法,強烈建議去看jimmy老師的教程削解,我這個只做參考8幌摇!氛驮!

好像有那么一絲不想寫教程了腕柜,嗯....,我是個完美主義者矫废,總感覺沒有寫好........

References:
http://www.reibang.com/p/03a7440c0960
https://cloud.tencent.com/developer/article/1622907
https://cloud.tencent.com/developer/article/1784632
https://mp.weixin.qq.com/s?__biz=MzAxMDkxODM1Ng==&mid=2247493507&idx=1&sn=e8533247aa045ce82e3a6cbb9f3b4281&scene=21#wechat_redirect
http://www.reibang.com/p/2991ef7bf993

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末盏缤,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子蓖扑,更是在濱河造成了極大的恐慌唉铜,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,013評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件律杠,死亡現(xiàn)場離奇詭異潭流,居然都是意外死亡柿赊,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評論 2 382
  • 文/潘曉璐 我一進店門幻枉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來碰声,“玉大人,你說我怎么就攤上這事熬甫∑崤” “怎么了渣慕?”我有些...
    開封第一講書人閱讀 152,370評論 0 342
  • 文/不壞的土叔 我叫張陵训裆,是天一觀的道長钩骇。 經(jīng)常有香客問我,道長郑象,這世上最難降的妖魔是什么贡这? 我笑而不...
    開封第一講書人閱讀 55,168評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮厂榛,結(jié)果婚禮上盖矫,老公的妹妹穿的比我還像新娘。我一直安慰自己击奶,他們只是感情好辈双,可當(dāng)我...
    茶點故事閱讀 64,153評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著柜砾,像睡著了一般湃望。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上痰驱,一...
    開封第一講書人閱讀 48,954評論 1 283
  • 那天证芭,我揣著相機與錄音,去河邊找鬼担映。 笑死废士,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的另萤。 我是一名探鬼主播湃密,決...
    沈念sama閱讀 38,271評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼诅挑,長吁一口氣:“原來是場噩夢啊……” “哼四敞!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起拔妥,我...
    開封第一講書人閱讀 36,916評論 0 259
  • 序言:老撾萬榮一對情侶失蹤忿危,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后没龙,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體铺厨,經(jīng)...
    沈念sama閱讀 43,382評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡缎玫,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,877評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了解滓。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片赃磨。...
    茶點故事閱讀 37,989評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖洼裤,靈堂內(nèi)的尸體忽然破棺而出邻辉,到底是詐尸還是另有隱情,我是刑警寧澤腮鞍,帶...
    沈念sama閱讀 33,624評論 4 322
  • 正文 年R本政府宣布值骇,位于F島的核電站,受9級特大地震影響移国,放射性物質(zhì)發(fā)生泄漏吱瘩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,209評論 3 307
  • 文/蒙蒙 一迹缀、第九天 我趴在偏房一處隱蔽的房頂上張望使碾。 院中可真熱鬧,春花似錦祝懂、人聲如沸部逮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽兄朋。三九已至,卻和暖如春怜械,著一層夾襖步出監(jiān)牢的瞬間颅和,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評論 1 260
  • 我被黑心中介騙來泰國打工缕允, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留峡扩,地道東北人。 一個月前我還...
    沈念sama閱讀 45,401評論 2 352
  • 正文 我出身青樓障本,卻偏偏與公主長得像教届,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子驾霜,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,700評論 2 345

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