CNS圖表復現(xiàn)20—第三次分群,以T細胞為例

本文是參考學習CNS圖表復現(xiàn)20—第三次分群乔煞,以T細胞為例的學習筆記吁朦。可能根據(jù)學習情況有所改動渡贾。
前面我們展現(xiàn)了 CNS圖表復現(xiàn)08—腫瘤單細胞數(shù)據(jù)第一次分群通用規(guī)則逗宜,然后呢,第二次分群的上皮細胞可以細分惡性與否空骚,免疫細胞呢纺讲,細分可以成為: B細胞,T細胞囤屹,巨噬細胞刻诊,樹突細胞等等。實際上每個免疫細胞亞群仍然可以繼續(xù)精細的劃分牺丙,以文章為例:

  • Macrophages from lung tumor biopsies (n = 1,379) were clus- tered into 5 distinct groups (Figure S7A) followed by differential gene expression in each resulting cluster
  • T cells and NK cells (n = 2,226) were analyzed in the same manner as macrophages and resulted in 5 distinct T/NK cell pop- ulations .

這就是正文的圖表5:

首先是Macrophages細分 :

各個細胞亞群的比例展示及標記基因小提琴圖:

圖片

各個細胞亞群的分布情況及標記基因熱圖;

圖片

然后是T cells and NK cells的細分

各個細胞亞群的比例展示及標記基因小提琴圖:

圖片

各個細胞亞群的分布情況及標記基因熱圖复局;

圖片

嘗試復現(xiàn)T細胞的亞群細分

文章提到的是

  • Macrophages from lung tumor biopsies (n = 1,379) were clus- tered into 5 distinct groups (Figure S7A) followed by differential gene expression in each resulting cluster
  • T cells and NK cells (n = 2,226) were analyzed in the same manner as macrophages and resulted in 5 distinct T/NK cell pop- ulations .

首先我們拿到T cells and NK cells數(shù)據(jù)集

rm(list=ls())
options(stringsAsFactors = F)
library(Seurat)
library(ggplot2)
### 來源于:CNS圖表復現(xiàn)02—Seurat標準流程之聚類分群的step1-create-sce.R
load(file = 'first_sce.Rdata')

### 來源于 step2-anno-first.R 
load(file = 'phe-of-first-anno.Rdata')

sce=sce.first
table(phe$immune_annotation)
# #  immune (CD45+,PTPRC), epithelial/cancer (EpCAM+,EPCAM), and stromal (CD10+,MME,fibo or CD31+,PECAM1,endo) 

genes_to_check = c("PTPRC","CD19",'PECAM1','MME','CD3G', 'CD4', 'CD8A' )
p <- DotPlot(sce, features = genes_to_check,
             assay='RNA' )  
p
table(phe$immune_annotation,phe$seurat_clusters) 

cells.use <- row.names(sce@meta.data)[which(phe$immune_annotation=='immune')]
length(cells.use)
sce <-subset(sce, cells=cells.use)  
sce

# 實際上這里需要重新對sce進行降維聚類分群冲簿,為了節(jié)省時間
# 我們直接載入前面的降維聚類分群結果,但是并沒有載入tSNE哦
## 來源于:CNS圖表復現(xiàn)05—免疫細胞亞群再分類 
load(file = 'phe-of-subtypes-Immune-by-manual.Rdata')
sce@meta.data=phe
table(phe$immuSub) 

# 需要背景知識
# https://www.abcam.com/primary-antibodies/immune-cell-markers-poster
# NK Cell* CD11b+, CD122+, NK1.1+, NKG2D+, NKp46+
# NCR1 Gene. Natural Cytotoxicity Triggering Receptor 1; NK-P46; Natural Killer Cell P46-Related Protein; 
# NKG2D is a transmembrane protein belonging to the NKG2 family of C-type lectin-like receptors. NKG2D is encoded by KLRK1 gene

# T Cell* CD3+ 
genes_to_check = c('CD3G', 'CD4', 'CD8A', 'FOXP3',
                   'TNF','IFNG','KLRK1','NCR1')
p <- DotPlot(sce, features = genes_to_check,group.by = 'seurat_clusters') + coord_flip()
p 

cells.use <- row.names(sce@meta.data)[which(phe$immuSub=='Tcells')]
length(cells.use)
sce <-subset(sce, cells=cells.use)  
sce
# 26485 features across 4555 samples within 1 assay 

然后走降維聚類分群流程
挑選出來了 4555 個細胞亿昏,走標準流程即可:

sce <- NormalizeData(sce, normalization.method =  "LogNormalize", 
                     scale.factor = 10000)
GetAssay(sce,assay = "RNA")
sce <- FindVariableFeatures(sce, 
                            selection.method = "vst", nfeatures = 2000) 
# 步驟 ScaleData 的耗時取決于電腦系統(tǒng)配置(保守估計大于一分鐘)
sce <- ScaleData(sce) 
sce <- RunPCA(object = sce, pc.genes = VariableFeatures(sce)) 
DimHeatmap(sce, dims = 1:12, cells = 100, balanced = TRUE)
ElbowPlot(sce)
sce <- FindNeighbors(sce, dims = 1:15)
sce <- FindClusters(sce, resolution = 0.2)
table(sce@meta.data$RNA_snn_res.0.2)  
sce <- RunUMAP(object = sce, dims = 1:15, do.fast = TRUE)
DimPlot(sce,reduction = "umap",label=T)
# 這個時候分成了6群

查亞群的標記基因

如果我們?nèi)?https://www.abcam.com/primary-antibodies/t-cells-basic-immunophenotyping 可以看到

  • Killer T cells (cytotoxic T lymphocytes: CD8+) , Effector or memory
  • Helper T cells (Th cells: CD4+), TH1,2,17
  • Regulatory T cells (Treg cells: CD4+, CD25+, FoxP3+, CD127+)
  • interferon gamma (IFN-γ) and tumor necrosis factor alpha (TNF-α), two factors produced by activated T cells
  • Helper Th1,IFNγ, IL-2, IL-12, IL-18

比較簡單的CD4,CD8,以及FOXP3各自代表的T細胞亞群峦剔。比較復雜的可以是:張澤民團隊的單細胞研究把T細胞分的如此清楚

但是很不幸,在這個數(shù)據(jù)集里面它們都不是主要的細胞亞群決定因素角钩。

genes_to_check = c('CD3G', 'CD4', 'CD8A', 'FOXP3',
                   'TNF','IFNG','KLRK1','NCR1')
p1 <- DotPlot(sce, features = genes_to_check,group.by = 'seurat_clusters') + coord_flip()
p1
p2=DimPlot(sce,reduction = "umap",label=T)
library(patchwork)
p1+p2

出圖如下:

圖片

文章呢吝沫,選取的其實是 biopsy_site == "Lung" 的T cells and NK cells (n = 2,226) ,區(qū)分成為5 distinct T/NK cell pop- ulations .

> table(sce@meta.data$biopsy_site)

Adrenal   Brain   Liver      LN    lung    Lung  Pleura 
    226       2     586     700     485    1692     864 

所以我們只能是繼續(xù)挑選子集走流程递礼。代碼如下:

sce <- NormalizeData(sce, normalization.method =  "LogNormalize", 
                     scale.factor = 10000)
GetAssay(sce,assay = "RNA")
sce <- FindVariableFeatures(sce, 
                            selection.method = "vst", nfeatures = 2000) 
# 步驟 ScaleData 的耗時取決于電腦系統(tǒng)配置(保守估計大于一分鐘)
sce <- ScaleData(sce) 
sce <- RunPCA(object = sce, pc.genes = VariableFeatures(sce)) 
DimHeatmap(sce, dims = 1:12, cells = 100, balanced = TRUE)
ElbowPlot(sce)
sce <- FindNeighbors(sce, dims = 1:15)
sce <- FindClusters(sce, resolution = 0.5)
table(sce@meta.data$RNA_snn_res.0.5)  
sce <- RunUMAP(object = sce, dims = 1:15, do.fast = TRUE)
genes_to_check = c('CD3G', 'CD4', 'CD8A', 'FOXP3',
                   'TNF','IFNG','KLRK1','NCR1')
p1 <- DotPlot(sce, features = genes_to_check,group.by = 'seurat_clusters') + coord_flip()
p1
p2=DimPlot(sce,reduction = "umap",label=T)
library(patchwork)
p1+p2

可以看到惨险,并沒有本質(zhì)上的區(qū)別:

圖片

復現(xiàn)失敗了!唯一看起來比較類似的就是 FOXP3 positive Tregs in cluster 5脊髓,哈哈哈哈辫愉!

  • Cluster0: generic dont really know.
  • Cluster1: Exhaustion in the pD cluster (1) and the PD/PR cluster (4). (PR/PD feature)
  • Cluster2: Cluster 2 is cytotoxic (GZMK, EOMES, CD8pos, IFNG) (Less in PD)
  • Cluster3: Cluster 3 is enriched for NK cells (Naive feature)
  • Cluster4: Exhaustion in the pD cluster (1) and the PD/PR cluster (4). (PR/PD feature)
  • Cluster5: FOXP3 positive Tregs in cluster 5 (Less in PR)
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市将硝,隨后出現(xiàn)的幾起案子恭朗,更是在濱河造成了極大的恐慌屏镊,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件痰腮,死亡現(xiàn)場離奇詭異而芥,居然都是意外死亡,警方通過查閱死者的電腦和手機膀值,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進店門棍丐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人虫腋,你說我怎么就攤上這事骄酗。” “怎么了悦冀?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵趋翻,是天一觀的道長。 經(jīng)常有香客問我盒蟆,道長踏烙,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任历等,我火速辦了婚禮讨惩,結果婚禮上,老公的妹妹穿的比我還像新娘寒屯。我一直安慰自己荐捻,他們只是感情好,可當我...
    茶點故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布寡夹。 她就那樣靜靜地躺著处面,像睡著了一般。 火紅的嫁衣襯著肌膚如雪菩掏。 梳的紋絲不亂的頭發(fā)上魂角,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天,我揣著相機與錄音智绸,去河邊找鬼野揪。 笑死,一個胖子當著我的面吹牛瞧栗,可吹牛的內(nèi)容都是我干的斯稳。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼迹恐,長吁一口氣:“原來是場噩夢啊……” “哼平挑!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤通熄,失蹤者是張志新(化名)和其女友劉穎唆涝,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體唇辨,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡廊酣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了赏枚。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片亡驰。...
    茶點故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖饿幅,靈堂內(nèi)的尸體忽然破棺而出凡辱,到底是詐尸還是另有隱情,我是刑警寧澤栗恩,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布透乾,位于F島的核電站,受9級特大地震影響磕秤,放射性物質(zhì)發(fā)生泄漏乳乌。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一市咆、第九天 我趴在偏房一處隱蔽的房頂上張望汉操。 院中可真熱鬧,春花似錦蒙兰、人聲如沸磷瘤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽膀斋。三九已至,卻和暖如春痹雅,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背糊识。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工绩社, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人赂苗。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓愉耙,卻偏偏與公主長得像,于是被迫代替她去往敵國和親拌滋。 傳聞我的和親對象是個殘疾皇子朴沿,可洞房花燭夜當晚...
    茶點故事閱讀 42,722評論 2 345

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