SC3 : 單細(xì)胞轉(zhuǎn)錄組聚類分析R包

Kiselev VY, Kirschner K, Schaub MT, Andrews T, Yiu A, Chandra T, Natarajan KN, Reik W, Barahona M, Green AR, Hemberg M (2017). “SC3 - consensus clustering of single-cell RNA-Seq data.” Nature Methods.

一開始我覺得這么火的單細(xì)胞數(shù)據(jù)分析,一定很高大上吧琴锭!當(dāng)我知道單細(xì)胞一個主要的功能是揭示細(xì)胞異質(zhì)性栋艳,而這個異質(zhì)性是有聚類算法來實(shí)現(xiàn)的变抽。一聽聚類缕棵,我樂了评姨。關(guān)于聚類我能說出一本書啊:

所謂聚類, 就是將一個數(shù)據(jù)單位的集合分割成幾個稱為簇或類別的子集 , 每個類中的數(shù)據(jù)都有相似性,它的劃分依據(jù)就是“物以類聚”。數(shù)據(jù)聚類分析是根據(jù)事物本身的特性, 研究對被聚類的對象進(jìn)行類別劃分的方法 珍坊。聚類分析依據(jù)的原則是使同一聚簇中的對象具有盡可能大的相似性, 而不同聚簇中的對象具有盡可能大的相異性, 聚類分析主要解決的問題就是如何在沒有先驗(yàn)知識的前提下, 實(shí)現(xiàn)滿足這種要求的聚簇的聚合。聚類分析稱為無監(jiān)督學(xué)習(xí) (Unsuper-vised Study),主要體現(xiàn)在聚類學(xué)習(xí)的數(shù)據(jù)對象沒有類別標(biāo)記,需要由聚類學(xué)習(xí)算法自動計(jì)算 正罢。

在我做過的上百場的培訓(xùn)中阵漏,每每講到聚類,我都會提到一句話:說到聚類翻具,有一個概念一定要像思想鋼印一樣刻在腦子里:距離履怯。不管哪種算法,都需要一個統(tǒng)計(jì)量來判斷對象之間的遠(yuǎn)近(或相似性)關(guān)系裆泳,這個就是距離叹洲。同樣的對象,不同的距離來度量親疏不同工禾,就像現(xiàn)在我站你面前运提,距離很近,但是血緣關(guān)系來講呢闻葵,就沒有那么近了民泵。

今天我們來認(rèn)識一種聚類算法(其實(shí)是一種組合的聚類算法, Nature Methods槽畔,2017)單細(xì)胞RNA-seq能夠基于轉(zhuǎn)錄組特征對細(xì)胞類型進(jìn)行定量表征栈妆。我們提出了單細(xì)胞一致性聚類(single cell consensus clustering, SC3),這是一種用戶友好的無監(jiān)督聚類工具,它通過一致方法將多個聚類解決方案組合在一起签钩,從而得到高精度和魯棒性的分群結(jié)果(http://bioconductor.org/packages/SC3)。這中聚類算法允許用戶自定義聚類的個數(shù)坏快,這個自由不是任何人都消受得起的:一些人根本不知道聚多少類是合適自己的铅檩。

我是SC3聚類的一般流程

(a)使用SC3框架進(jìn)行聚類的概述(參見方法)。用Treutlein數(shù)據(jù)舉例說明了一致步驟莽鸿。
(b)用于設(shè)置SC3參數(shù)的已發(fā)布數(shù)據(jù)集昧旨。N是數(shù)據(jù)集中的細(xì)胞數(shù);k為作者最初確定的簇?cái)?shù);單位:RPKM是每千堿基每百萬次讀的轉(zhuǎn)錄本,RPM是每百萬次讀的轉(zhuǎn)錄本祥得,F(xiàn)PKM是每千堿基每百萬次讀的轉(zhuǎn)錄本片段兔沃,TPM是每百萬次讀的轉(zhuǎn)錄本片段。
(c) ARI>處d值的直方圖级及。金標(biāo)準(zhǔn)數(shù)據(jù)集達(dá)到95乒疏。黑色豎線表示細(xì)胞總數(shù)N的d = 4-7%,分類準(zhǔn)確率高饮焦。
(d) (b)中所示數(shù)據(jù)集的SC3聚類的100個實(shí)現(xiàn)怕吴。條對應(yīng)點(diǎn)的中位數(shù)。紅色和灰色分別對應(yīng)有一致步長和無一致步長時的聚類县踢。這條黑線對應(yīng)的ARI=0转绷。8。黑色虛線分隔了金和銀標(biāo)準(zhǔn)數(shù)據(jù)集硼啤。

文獻(xiàn)用到的數(shù)據(jù)集包含了420個細(xì)胞中20000余個基因的表達(dá)信息议经,直接進(jìn)行聚類資源消耗較大且由于數(shù)據(jù)噪聲過大會導(dǎo)致效果不佳。其實(shí)谴返,先降維(特征選擇)再聚類已經(jīng)是通識了煞肾。SC3算法的第一步也是要進(jìn)行基因過濾,文中將表達(dá)率低于6%和高于94%的基因都從數(shù)據(jù)集中去除嗓袱,將數(shù)據(jù)集的規(guī)模減少了50%扯旷。不同的是,SC3第二步會計(jì)算細(xì)胞與細(xì)胞之間的“距離”索抓,為了算法的普適性钧忽,這里一共計(jì)算了三種距離,分別是歐氏距離逼肯,皮爾森相關(guān)系數(shù)與斯皮爾曼相關(guān)系數(shù)耸黑,最終得到了三個420維的距離矩陣±捍保基于距離矩陣來做pca降維大刊,而后再用k-means聚類。所以SC3與其說優(yōu)化了聚類算法三椿,不如說是調(diào)整了降維的算法缺菌。

實(shí)現(xiàn)起來是很簡單的葫辐,因?yàn)橐呀?jīng)有成熟的R包了:SC3。下載安裝就可以用來解鎖細(xì)胞異質(zhì)性啦伴郁!

卑微小王就不再一步一步跑官網(wǎng)的教程了耿战,SC3也是基于SingleCellExperiment對象,如果是10X的數(shù)據(jù)可以直接用Seurat過濾QC一下焊傅,轉(zhuǎn)化為SingleCellExperiment即可分析剂陡。

library(Seurat)
library(SingleCellExperiment)
library(SC3,lib.loc = "D:/R-3.5.1/library")
library(scater,lib.loc = "D:/R-3.5.1/library")
pbmc <- readRDS(file = "D:\\Users\\Administrator\\Desktop\\Novo周運(yùn)來\\SingleCell\\scrna_tools/pbmc3k_final.rds")

sce <- SingleCellExperiment(
  assays = list(
    counts = as.matrix(pbmc@assays$RNA@counts),
    logcounts = as.matrix(pbmc@assays$RNA@data)
  ), 
  colData = pbmc@meta.data
)

當(dāng)然,也可以用seurat直接轉(zhuǎn):

sce <- as.SingleCellExperiment(pbmc)
library(future)
# check the current active plan
plan()
# change the current plan to access parallelization
plan("multiprocess", workers = 4)
plan()
sce <- sc3(sce, ks = 2:10, biology = TRUE) # too time
sc3_plot_expression(
    sce, k = 3, 
    show_pdata = c(
        "cell_type1", 
        "log10_total_features",
        "sc3_3_clusters", 
        "sc3_3_log2_outlier_score"
    )
)
我只是官網(wǎng)示例


SC3聚類算法實(shí)現(xiàn)初探
vignettes||SC3
SC3: consensus clustering of single-cell RNA-seq data

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末狐胎,一起剝皮案震驚了整個濱河市鸭栖,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌握巢,老刑警劉巖晕鹊,帶你破解...
    沈念sama閱讀 206,013評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異暴浦,居然都是意外死亡捏题,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評論 2 382
  • 文/潘曉璐 我一進(jìn)店門肉渴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來公荧,“玉大人,你說我怎么就攤上這事同规⊙” “怎么了?”我有些...
    開封第一講書人閱讀 152,370評論 0 342
  • 文/不壞的土叔 我叫張陵券勺,是天一觀的道長绪钥。 經(jīng)常有香客問我,道長关炼,這世上最難降的妖魔是什么程腹? 我笑而不...
    開封第一講書人閱讀 55,168評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮儒拂,結(jié)果婚禮上寸潦,老公的妹妹穿的比我還像新娘。我一直安慰自己社痛,他們只是感情好见转,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,153評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蒜哀,像睡著了一般斩箫。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,954評論 1 283
  • 那天乘客,我揣著相機(jī)與錄音狐血,去河邊找鬼。 笑死易核,一個胖子當(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
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡约急,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,877評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了苗分。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片厌蔽。...
    茶點(diǎn)故事閱讀 37,989評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖摔癣,靈堂內(nèi)的尸體忽然破棺而出奴饮,到底是詐尸還是另有隱情,我是刑警寧澤择浊,帶...
    沈念sama閱讀 33,624評論 4 322
  • 正文 年R本政府宣布戴卜,位于F島的核電站,受9級特大地震影響琢岩,放射性物質(zhì)發(fā)生泄漏投剥。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,209評論 3 307
  • 文/蒙蒙 一担孔、第九天 我趴在偏房一處隱蔽的房頂上張望江锨。 院中可真熱鬧,春花似錦糕篇、人聲如沸泳桦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,199評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽灸撰。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間浮毯,已是汗流浹背完疫。 一陣腳步聲響...
    開封第一講書人閱讀 31,418評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留债蓝,地道東北人壳鹤。 一個月前我還...
    沈念sama閱讀 45,401評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像饰迹,于是被迫代替她去往敵國和親芳誓。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,700評論 2 345

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

  • 1. 章節(jié)主要內(nèi)容 “聚類”(clustering)算法是“無監(jiān)督學(xué)習(xí)”算法中研究最多啊鸭、應(yīng)用最廣的算法锹淌,它試圖將數(shù)...
    閃電隨筆閱讀 5,010評論 1 24
  • 前言 這篇筆記是StatQuest系列教程的第47,48赠制,49節(jié)赂摆。第47節(jié)與第48節(jié)有很在一部分內(nèi)容是重復(fù)的,主要...
    backup備份閱讀 2,237評論 1 11
  • 本篇結(jié)構(gòu) 簡介 聚類算法的分類 K-Means聚類算法 DBSCAN聚類算法 本篇介紹了聚類算法的種類钟些,重點(diǎn)關(guān)注K...
    w1992wishes閱讀 7,430評論 0 14
  • 無形的力量:真正的興趣愛好烟号,去一路跟隨它(也就是天命所在,說的通俗一點(diǎn)就是政恍,我知道了我是誰汪拥,我應(yīng)該做什么) 所謂的...
    邊柳_d637閱讀 936評論 0 4
  • 一提到心里喷楣,或者說心理醫(yī)生,我們就會想到很多鹤树,和他本來不一樣的铣焊。 今天我有幸走進(jìn)心理學(xué),揭開她美麗的面紗進(jìn)一步了解...
    lygly9閱讀 198評論 0 0