lesson1 單一樣本的scRNA測序pipeline

第一步 數(shù)據(jù)獲取與前期準(zhǔn)備

從NCBI上下載GEO數(shù)據(jù)后解壓拉庶,在Rstudio中加載需要的package

##系統(tǒng)報錯改為英文
Sys.setenv(LANGUAGE = "en")
##禁止轉(zhuǎn)化為因子
options(stringsAsFactors = FALSE)
##清空環(huán)境
rm(list=ls())

##安裝Seurat包
install.packages('Seurat')
##改變工作路徑,將相關(guān)結(jié)果儲存至對應(yīng)文件夾
setwd("C:/Users/86269/Desktop/shun.C/single_cell")
##加載需要的包
library(Seurat)
library(tidyverse)
library(dplyr)
library(patchwork)

第二步 讀取數(shù)據(jù)并進行質(zhì)控

讀取數(shù)據(jù)

##讀取10×數(shù)據(jù),文件夾中需要包括features.tsv,barcodes.tsv,matrix.mtx,分別代表基因名祷愉,標(biāo)記序列,表達量矩陣
scRNA_counts = Read10X("C:/Users/86269/Desktop/shun.C/single_cell/BC21")
class(scRNA_counts)

##創(chuàng)建Seurat對象
##min.cells表示基因至少要在多少個細(xì)胞中被檢測到表達才算有效
##min.features至少要檢測到多少個基因才算有效
scRNA = CreateSeuratObject(scRNA_counts,project = "sample_21",
                           min.cells = 3, min.features = 300)

進行質(zhì)控

過濾線粒體DNA含量過高的基因执解,因為線粒體基因含量過高表示細(xì)胞即將凋亡或狀態(tài)不佳帝洪,過濾標(biāo)準(zhǔn)需要根據(jù)實際情況考慮,例如肝臟細(xì)胞與肌肉細(xì)胞本身含線粒體量較多做修,過濾閾值也應(yīng)當(dāng)適當(dāng)增大霍狰。
過濾紅細(xì)胞,將紅細(xì)胞表達的標(biāo)志性基因與樣本基因匹配饰及,如果一個細(xì)胞的這些基因表達量過高蔗坯,就將該細(xì)胞視作紅細(xì)胞。

#計算線粒體基因比例
scRNA[["percent.mt"]]=PercentageFeatureSet(scRNA,pattern = "^MT-")

#計算紅細(xì)胞比例
HB.genes = c("HBA1","HBA2","HBB","HBD","HBE1","HBG1","HBG2","HBM","HBQ1","HBZ")
HB_m <- match(HB.genes,rownames(scRNA@assays$RNA))
HB.genes = rownames(scRNA@assays$RNA)[HB_m]
HB.genes = HB.genes[!is.na(HB.genes)]
scRNA[["percent.HB"]] <- PercentageFeatureSet(scRNA,features = HB.genes)

#過濾低質(zhì)量細(xì)胞
scRNA1 <- subset(scRNA,subset=nFeature_RNA>500 &
                   nCount_RNA>1000 & percent.mt<20 & percent.HB<1)

第三步 歸一化燎含,降維與聚類

1.歸一化宾濒,排除測序深度的影響
2.降維與聚類

  • 尋找高變基因,即在各細(xì)胞中表達量差異最大的基因屏箍,一般挑選3000個绘梦,這一步將維度降到3000
  • 中心化處理,PCA降維前的必要步驟
  • 對高變基因通過PCA降維赴魁,一般降至50個維度
  • 制無向有權(quán)圖并切圖卸奉,對細(xì)胞進行聚類
  • 進行降維,降至二維進行展示颖御,有tsne與umap法
#歸一化處理
scRNA1 <- NormalizeData(scRNA1,normalization.method="LogNormalize",scale.factor=10000)
#挑選高變基因
scRNA1 <- FindVariableFeatures(scRNA1,selection.method="vst",nfeatures=3000)
#對基因進行中心化處理榄棵,將每個細(xì)胞中高變基因的表達量改變,使細(xì)胞的平均表達為0潘拱,細(xì)胞間差異為1疹鳄,成為標(biāo)準(zhǔn)數(shù)據(jù),賦予每個基因相同的權(quán)重泽铛,因此高表達基因不占優(yōu)勢
scale_gene <- VariableFeatures(scRNA1)
scRNA1 <- ScaleData(scRNA1,features=scale_gene)
#將高變基因通過PCA降維,RunPCA默認(rèn)選取50個PC
scRNA1 <- RunPCA(scRNA1,features=VariableFeatures(scRNA1))
##聚類處理
pc.num=1:20
scRNA1 <- FindNeighbors(scRNA1,dims=pc.num)
scRNA1 <- FindClusters(scRNA1,resolution=1.0)
##可視化聚類尚辑,將高維數(shù)據(jù)降低到二維or三維進行展示
scRNA1 <- RunTSNE(scRNA1,dims=pc.num)
embed_tsne <- Embeddings(scRNA1,"tsne")
#tsne法
DimPlot(scRNA1,reduction="tsne",label=TRUE)
#umap法
DimPlot(scRNA1,reduction="umap",label=TRUE)

第四步 細(xì)胞周期評分

scRNA測序中,單個樣品里有許多細(xì)胞盔腔,每個細(xì)胞的表達的基因種類與表達量都不相同杠茬,根據(jù)基因表達的不同將細(xì)胞進行分類月褥,但細(xì)胞基因表達的差距除了是因為細(xì)胞種類的差別,也有可能是因為細(xì)胞所處周期的差別瓢喉,細(xì)胞聚類可能會被細(xì)胞周期影響宁赤,所以需要檢查細(xì)胞周期的影響,如果細(xì)胞周期影響較大則需要排除細(xì)胞周期因素

#細(xì)胞周期評分
#cc.genes是Seurat包自帶的一個list栓票,含不同細(xì)胞周期的marker基因
CaseMatch(c(cc.genes$s.genes,cc.genes$g2m.genes),VariableFeatures(scRNA1))
g2m_genes=cc.genes$g2m.genes
g2m_genes=CaseMatch(search = g2m_genes,match=rownames(scRNA1))
s_genes=cc.genes$s.genes
s_genes=CaseMatch(search=s_genes,match=rownames(scRNA1))
scRNA1 <- CellCycleScoring(object=scRNA1,g2m.features = g2m_genes,s.features = s_genes)
#查看細(xì)胞周期基因?qū)?xì)胞聚類的影響
scRNAa <- RunPCA(scRNA1,features=c(s_genes,g2m_genes))
p <- DimPlot(scRNAa,reduction = "pca",group.by="Phase")
p
#如果細(xì)胞周期有影響則消除細(xì)胞周期的影響
#scRNAb <- ScaleData(scRNA1,vars.to.regress="S.Score","G2M.Score")

細(xì)胞周期影響的判定需要在中心化處理后决左,排除細(xì)胞周期影響后就可以繼續(xù)進行PCA降維等后續(xù)步驟

最后編輯于
?著作權(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)容