Cell Ontology:解析細(xì)胞類型新維度

記得在文章CD8+CD28- Treg||我就不信就我一個人覺得現(xiàn)有的細(xì)胞群命名有點(diǎn)麻煩和文章單細(xì)胞數(shù)據(jù)科學(xué)的十一個重大挑戰(zhàn)中床估,我們提出過傳統(tǒng)細(xì)胞類型定義的困惑:細(xì)胞名稱及其相互關(guān)系不明姐叁。說到底是語義不明,以至于同樣的細(xì)胞類型在不同的語境下表達(dá)方式可能完全不同。這就像基因的命名和功能一樣协饲,于是我們開發(fā)出了一套本體論(Ontology):GO(Gene Ontology )棒掠。不得不說,這是一項(xiàng)革命性的思路恍飘,一下子使我們研究基因的功能有了范式,同行之間的交流也方便了許多谴垫。

可以說章母,本體論提供了一個描述的語境。那么翩剪,面對單細(xì)胞技術(shù)帶來的史無前例多樣的細(xì)胞類型乳怎,我們是不是也可以構(gòu)建一個細(xì)胞的描述語境呢?顯然是可以的前弯,也是必要的舞肆,今天運(yùn)來小哥哥就拉著你來看看細(xì)胞本體論:Cell Ontology。

第一篇映入我們眼簾的文獻(xiàn)是:

Cell type discovery and representation in the era of high-content single cell phenotyping

這是一篇發(fā)表在2017年的文獻(xiàn)博杖,我們今天討論的細(xì)胞本體論的概念基本是來自這里的椿胯。文章的后面,運(yùn)來小哥哥會通過一個R包帶大家看看細(xì)胞本體是咋回事剃根。在這之前哩盲,我們先看下該文章對細(xì)胞本體的基本描述:

多細(xì)胞生物的一個基本特征是細(xì)胞類型在分化過程中的專門化(特化)。這些特殊的細(xì)胞類型不僅可以表征不同器官和組織的正常功能狈醉,還可以作為多種不同疾病狀態(tài)和治療/疫苗反應(yīng)的細(xì)胞生物標(biāo)記物廉油。細(xì)胞本體論為定義的細(xì)胞類型提供一個標(biāo)準(zhǔn)的命名法,用于比較分析和生物標(biāo)記物發(fā)現(xiàn)苗傅。歷史上抒线,這些細(xì)胞類型的定義是基于獨(dú)特的細(xì)胞形狀和結(jié)構(gòu),解剖位置和標(biāo)記蛋白表達(dá)渣慕。然而嘶炭,由于新的高通量抱慌、高含量的細(xì)胞計數(shù)和測序技術(shù)的應(yīng)用,我們正在經(jīng)歷一場細(xì)胞特性的革命眨猎。被識別的不同細(xì)胞類型數(shù)量的激增正在挑戰(zhàn)細(xì)胞本體中細(xì)胞類型定義的范式抑进。

在本文中,我們提供了使用高含量細(xì)胞檢測和單細(xì)胞RNA測序技術(shù)進(jìn)行最先進(jìn)的細(xì)胞生物標(biāo)記物表征的例子睡陪,并提出了基于這些前沿技術(shù)的數(shù)據(jù)輸出的標(biāo)準(zhǔn)化細(xì)胞類型表征的策略寺渗,包括以標(biāo)準(zhǔn)化實(shí)驗(yàn)元數(shù)據(jù)的形式的“上下文注釋(context annotations)”,這些元數(shù)據(jù)涉及被分析的標(biāo)本來源兰迫,以及作為基于機(jī)器學(xué)習(xí)的細(xì)胞類型分類模型中最有用的特征的標(biāo)記基因信殊。

現(xiàn)如今,細(xì)胞本體論已經(jīng)從它的概念階段走向應(yīng)用階段了汁果,如我們提到過的細(xì)胞類型鑒定|| 你要的SingleR教程鸡号,一本書夠不夠中,就在SingleR 的語境下應(yīng)用R包ontoProc來描述樣本中細(xì)胞類型之間的關(guān)系须鼎。

細(xì)胞系本體論

但是細(xì)胞本體論并不是一開始就有的鲸伴,在bulkRNA的時代,細(xì)胞生物學(xué)家為了描述細(xì)胞系及其相互關(guān)系的時候有意無意地開始構(gòu)建細(xì)胞系本體論晋控。

插播名詞解釋:

  • 細(xì)胞系(cell line)指原代細(xì)胞培養(yǎng)物經(jīng)首次傳代成功后所繁殖的細(xì)胞群體汞窗。 也指可長期連續(xù)傳代的培養(yǎng)細(xì)胞。(由此便引申出了后來的有限細(xì)胞系(FiniteCellLine)赡译、無限細(xì)胞系(InfiniteCellLine))仲吏,因此,細(xì)胞系狹義的是指可連續(xù)傳代的細(xì)胞(特定環(huán)境下口語和書面語都使用)蝌焚,廣義是指可傳代的細(xì)胞裹唆。

細(xì)胞系本體論(CLO)是一個以社區(qū)為基礎(chǔ)的(ommunity-based )生物細(xì)胞系領(lǐng)域的本體論,其重點(diǎn)是培養(yǎng)收集的永久細(xì)胞系只洒。構(gòu)成CLO框架的上層本體結(jié)構(gòu)包括基本形式本體和關(guān)系本體许帐。CLO中包含的細(xì)胞系與來自其他本體(如細(xì)胞類型本體、NCBI分類法和生物醫(yī)學(xué)研究本體)的術(shù)語相關(guān)聯(lián)毕谴。以Jurkat細(xì)胞系為例成畦,采用常見的細(xì)胞系設(shè)計模式對細(xì)胞系及其屬性進(jìn)行建模。目前涝开,CLO包含從ATCC循帐、HyperCLDB、Coriell和手動管理中獲得的超過36,000個細(xì)胞系條目舀武。這些細(xì)胞系來自194種細(xì)胞類型拄养、656個解剖條目和217個生物體∫眨基于owl的CLO是機(jī)器可讀的瘪匿,可以用于各種應(yīng)用程序跛梗。

Cell Line Ontology: Redesigning the Cell Line Knowledgebase to Aid Integrative Translational Informatics .July 28-30, 2011 · Buffalo, NY, USA

這個過程很讓我想起我們在構(gòu)建微生物命名系統(tǒng)以及構(gòu)建元素周期表時候的場景:從簡單到復(fù)雜,從個體總體柿顶。后來,我們也是基于細(xì)胞系本體論在構(gòu)建細(xì)胞本體操软。在ontobee上面我們可以看到有幾種細(xì)胞本體:

我們下載一個CL看看:

包含Term IRI 嘁锯,Term label ,Parent term IRI 聂薪,Parent term label 家乘,Alternative term ,Definition信息藏澳,但是并看不出來細(xì)胞細(xì)胞類型之間的關(guān)系仁锯,甚至連細(xì)胞名稱都沒有。

細(xì)胞本體論

細(xì)胞本體論被設(shè)計為cell 類型的結(jié)構(gòu)化控制詞匯表翔悠。這個本體論是為模型生物和其他生物信息學(xué)數(shù)據(jù)庫的使用而構(gòu)建的业崖,在這些數(shù)據(jù)庫中需要控制細(xì)胞類型的詞匯表。這個本體論不是生物體特有的蓄愁,它涵蓋了從原核生物到哺乳動物的細(xì)胞類型双炕。但是,它排除了PO涵蓋的植物細(xì)胞類型撮抓。詳情請參閱網(wǎng)站http://cellontology.org妇斤。

讓我們回到2017年的論文,它主要思考了單細(xì)胞水平下的細(xì)胞本體丹拯。在基因組學(xué)方面站超,單細(xì)胞RNA測序允許對數(shù)千個單個細(xì)胞的完整轉(zhuǎn)錄譜進(jìn)行量化,揭示了細(xì)胞表型的復(fù)雜性乖酬,而這在幾年前還未得到重視死相。此外,陳-扎克伯格倡議支持的“人類細(xì)胞圖譜”(www.humancellatlas.org)等重大新研究項(xiàng)目也推動了發(fā)現(xiàn)的快速步伐咬像。

因此媳纬,出現(xiàn)了幾個主要的挑戰(zhàn),限制了知識表示以至于跟不上這些新興技術(shù)輸出的能力施掏。首先钮惠,缺乏標(biāo)準(zhǔn)化的標(biāo)記(marker)用于確定哪些細(xì)胞類型,這很難讓不同實(shí)驗(yàn)室的結(jié)果直接做比較七芭。其次素挽,在單細(xì)胞RNA測序技術(shù)的情況下,以一種不帶偏見的方式檢測所有可檢測的轉(zhuǎn)錄本狸驳,困難的是定量和統(tǒng)計以識別我們是否觀察到相同的細(xì)胞類型预明。于是缩赛,文中提供了示例生成的數(shù)據(jù)如何被不同的實(shí)驗(yàn)平臺用來識別新的細(xì)胞類型,同時提出如何使用這些數(shù)據(jù)來增強(qiáng)CL撰糠,可以用來統(tǒng)計比較定量細(xì)胞類型定義來確定細(xì)胞類型的身份酥馍。

細(xì)胞本體中的細(xì)胞類型表示。
a.擴(kuò)展的is_a是單核細(xì)胞分支的層次結(jié)構(gòu)阅酪。
b. 擴(kuò)展的是樹突狀細(xì)胞分支的層次結(jié)構(gòu)旨袒。
c. 樹突狀細(xì)胞的細(xì)胞類型術(shù)語記錄的一個例子。

這套細(xì)胞類型的語義體系無疑對我們認(rèn)識描述刻畫細(xì)胞類型是大有裨益的术辐,盡管砚尽,我們還不能很好地區(qū)分細(xì)胞類型與細(xì)胞狀態(tài)(Cell types versus cell states)。

一個基本的問題也出現(xiàn)在考慮如何區(qū)分離散的細(xì)胞類型和更多的細(xì)胞狀態(tài)辉词。很明顯必孤,除了細(xì)胞分化的程序化過程外,細(xì)胞通過微妙地改變其表型狀態(tài)瑞躺,不斷地對環(huán)境的變化作出反應(yīng)和適應(yīng)敷搪。在造血系統(tǒng)的情況下,細(xì)胞經(jīng)常響應(yīng)他們的環(huán)境激活特定效應(yīng)功能幢哨,以重建正常的穩(wěn)態(tài)购啄。問題是,表征這種反應(yīng)的表型細(xì)胞變化是否代表一種新的細(xì)胞類型嘱么,亦或只是一種細(xì)胞類型的不同狀態(tài)狮含?

這個問題,我們采取【擱置爭議曼振,共同開發(fā)】的策略几迄,先把細(xì)胞類型描述清楚再說吧。

細(xì)胞周期本體

細(xì)胞周期本體(The Cell Cycle Ontology, http://www.CellCycleOntology.org)是一個應(yīng)用程序本體冰评,它自動捕獲和集成關(guān)于細(xì)胞周期過程的詳細(xì)知識映胁。細(xì)胞周期本體由語義web技術(shù)支持,可以通過web進(jìn)行瀏覽甲雅、可視化解孙、高級查詢和計算推理。細(xì)胞周期本體論簡化了細(xì)胞周期相關(guān)分子網(wǎng)絡(luò)組件的詳細(xì)分析抛人。通過查詢和自動推理弛姜,它可能提供新的假設(shè),以幫助引導(dǎo)一個系統(tǒng)生物學(xué)方法的生物網(wǎng)絡(luò)建設(shè)妖枚。

癌癥細(xì)胞本體論

同樣廷臼,參考細(xì)胞本體,我們希望開發(fā)一套描述腫瘤樣本細(xì)胞類型的語義體系。于是荠商,為什么我們不可以構(gòu)建一個癌細(xì)胞本體呢寂恬?

病理學(xué)家和分子生物學(xué)家說著不同的語言——即使他們在談?wù)撏瑯拥氖虑椤D[瘤活檢和切除的基本外科病理學(xué)已經(jīng)從基本癌癥生物學(xué)發(fā)展而來莱没,因此外科病理學(xué)和分子生物學(xué)才剛剛開始融合初肉。我們的目標(biāo)是OncoCL提供一種共享的語言。

我們已經(jīng)開發(fā)了一個本體饰躲,OncoCL牙咏,來描述癌細(xì)胞,并提供一個框架來一致的注釋癌癥相關(guān)的基因組和表型數(shù)據(jù)属铁。OncoCL在癌癥起始階段和癌癥進(jìn)展的關(guān)鍵階段捕獲腫瘤發(fā)生的sp的時間眠寿、組織病理學(xué)和分子特性

我們的方法的概念基礎(chǔ)是躬翁,癌癥細(xì)胞表型源自于Hanahan和Weinberg所描述的基于獲得癌癥特征的一系列改變焦蘑。我們實(shí)現(xiàn)了一個基于缺省邏輯表示連接到現(xiàn)有的細(xì)胞本體(CL)的代表正常細(xì)胞類型,作為 “cell of origin’”——也就是說,一個正常的/規(guī)范的細(xì)胞類型,維護(hù)其正常,直到經(jīng)歷onco-genic變化特征。

顯然盒发,這樣的思考是有益的例嘱,但是道路是曲折的。鑒于腫瘤的異質(zhì)性宁舰,這個本體論目前還沒有很好的數(shù)據(jù)庫拼卵,我相信,單細(xì)胞技術(shù)既然挑戰(zhàn)了腫瘤細(xì)胞類型的異質(zhì)性蛮艰,也必將為自身帶來的挑戰(zhàn)給出新的啟發(fā)腋腮。

ontoProc

在看了那么多細(xì)胞本體之后,讓我們來借助R包ontoProc一探細(xì)胞本體的究竟壤蚜。

單細(xì)胞生物學(xué)的雄心只有通過許多團(tuán)體的協(xié)調(diào)努力才能實(shí)現(xiàn)即寡,以幫助闡明細(xì)胞類型和在一系列功能和環(huán)境背景下的動態(tài)。在這種追求中袜刷,使用形式本體論是很有動機(jī)的聪富,而且研究進(jìn)展也很可觀。

  • Bakken et al. (2017) discuss “strategies for standardized cell type representations based on the data outputs from [high-content flow cytometry and single cell RNA sequencing], including ‘context annotations’ in the form of standardized experiment metadata about the specimen source analyzed and marker genes that serve as the most useful features in machine learning-based cell type classification models.”

  • Aevermann et al. (2018) describe how the FAIR principles can be implemented using statistical identification of necessary and sufficient conditions for determining cell class membership. They propose that Cell Ontology can be transformed to a broadly usable knowledgebase through the incorporation of accurate marker gene signatures for cell classes.

在這個小教程中著蟹,我們回顧關(guān)鍵的概念和任務(wù)墩蔓。

if (!requireNamespace("BiocManager", quietly = TRUE))
    install.packages("BiocManager")
BiocManager::install("ontoProc")

看看這R包中的本體知識庫,下表描述了ontoProc中定義的get*命令可用的資源。

packDesc2019
    X               func                          purpose nclass nprop nroots                                      datav fmtv
1   1    getCellLineOnto                Cell line catalog  41780     6     18                                       <NA>   NA
2   2        getCellOnto            Cell biology concepts   6708    59     38                        releases/2018-07-07  1.2
3   3 getCellosaurusOnto               Cell line concepts  87311     6  87311                                         23  1.2
4   4       getChebiLite Chemicals of biological interest 108496     6     12                                        155  1.2
5   5       getChebiOnto                                  108496    33     12                                        155  1.2
6   6     getDiseaseOnto                    Human disease  11283    24     13                        releases/2018-06-29  1.2
7   7         getEFOOnto             Experimental factors  20115     6     36                                       2.87  1.2
8   8        getGeneOnto                    Gene ontology  47123    43     10                        releases/2018-03-27  1.2
9   9         getHCAOnto                 Human cell atlas  11047     6     76                                       <NA>   NA
10 10    getOncotreeOnto                  Tumor relations   1298    15      3 ncit/releases/2017-12-15/ncit-oncotree.ttl  1.2
11 11         getPATOnto            Phenotypes and traits   2670    43     21                        releases/2018-11-12  1.2
12 12          getPROnto                 Protein ontology 315957     6     53                                         57  1.2
13 13       getUBERON_NE                          Anatomy  14937     6    135                        releases/2017-09-09  1.2

就我們比較關(guān)心的細(xì)胞類型,看一下包含細(xì)胞類型的本體的概念概述熟空。

定義污茵、語義:對于具體性,我們提供了一些定義和例子源内。我們使用本體論(Ontology)來表示概念領(lǐng)域中使用的術(shù)語的系統(tǒng)組織。細(xì)胞本體(Cell Ontology)是一種圖形化的數(shù)據(jù)結(jié)構(gòu),將精心注釋的術(shù)語作為節(jié)點(diǎn)膜钓,并按照慣例定義術(shù)語之間的語義關(guān)系作為邊嗽交。例如肺纖毛細(xì)胞(lung ciliated cell)有URI。這個URI包括一個固定長度的標(biāo)識符CL_1000271颂斜,在遇到它的任何地方都有明確的解釋夫壁。有一條從肺纖毛細(xì)胞(lung ciliated cell)纖毛細(xì)胞(ciliated cell)的關(guān)系鏈,然后是原生細(xì)胞(native cell)沃疮,然后是細(xì)胞(cell)盒让,每個細(xì)胞都有自己的URI和相關(guān)的解釋性元數(shù)據(jù)。鏈中較精確項(xiàng)與較不精確項(xiàng)之間的關(guān)系表示為子類(SubclassOf)司蔬。纖毛細(xì)胞(Ciliated cell)相當(dāng)于原生質(zhì)膜部分有纖毛的原生細(xì)胞(native cell)邑茄。術(shù)語和關(guān)系的語義特征用于推斷術(shù)語之間的關(guān)系,這些術(shù)語在可用的本體中可能沒有直接指定關(guān)系俊啼。

挑戰(zhàn):鑒于生物本體論中可用的大量材料肺缕,在實(shí)踐中很少使用正式注釋,這多少有些令人驚訝授帕。在數(shù)據(jù)注釋中更常見地使用本體的障礙包括

  • (i)有意術(shù)語和感興趣的本體中可用的術(shù)語之間不存在精確匹配同木。
  • (二)本體標(biāo)識碼解碼的實(shí)際問題。GO標(biāo)記或CL標(biāo)記非常適合于編程跛十,但是與標(biāo)記一起定位相關(guān)的自然語言術(shù)語或短語比較笨拙彤路。
    +(iii)在知識邊界所觀察到的條件的條款的適宜性不一致的可能性。為了幫助解決這些問題的第一個芥映,Bioconductor的本體論程序包包括一個函數(shù)自由映射洲尊,它將搜索本體論術(shù)語接近一些目標(biāo)術(shù)語或短語。

第二個問題可以用更精細(xì)的數(shù)據(jù)結(jié)構(gòu)在R中進(jìn)行變量注釋和編程來解決奈偏,而第三個問題的重要性將隨著本體采用的價值在更多的應(yīng)用中得到體現(xiàn)而降低坞嘀。

類和實(shí)例:將設(shè)計和維護(hù)本體的實(shí)踐與使用本體類術(shù)語注釋概念實(shí)例的實(shí)踐區(qū)分開來是很重要的。本體和一組注釋實(shí)例的組合稱為知識庫霎苗。為了說明這里的一些顯著區(qū)別姆吭,考慮稱為A549的細(xì)胞系,它是從一個人類肺腺癌樣本建立的唁盏。在細(xì)胞本體中沒有提及A549内狸。然而,A549作為“智人細(xì)胞系”類的一個亞類存在于EBI實(shí)驗(yàn)因子本體論中厘擂。這大概是因?yàn)锳549是一類被廣泛應(yīng)用于實(shí)驗(yàn)的細(xì)胞昆淡,而這個細(xì)胞系構(gòu)成了一個值得在實(shí)驗(yàn)因子的全局中繪制的概念。在與細(xì)胞結(jié)構(gòu)和功能本身相關(guān)的概念中刽严,A549是一個個體昂灵,可以通過擁有或缺乏細(xì)胞本體論所列舉的屬性來加以表征,但它并不值得納入該本體論。

在單細(xì)胞轉(zhuǎn)錄組數(shù)據(jù)中應(yīng)用細(xì)胞本體

我們知道眨补,10X基因組公司(10X Genomics corporation)發(fā)布了一個數(shù)據(jù)集管削,該數(shù)據(jù)集是對來自健康捐贈者的10000個PBMC進(jìn)行測序的結(jié)果。在Seurat分析的教程中使用了數(shù)據(jù)子集(Butler等人(2018))撑螺。教程分析3000個細(xì)胞子集的一個結(jié)果是一個細(xì)胞類型和基于表達(dá)的細(xì)胞標(biāo)識標(biāo)記表含思。下表的前三列來自Seurat教程的結(jié)尾材料;其余的列是通過在Seurat術(shù)語和Cell Ontology中找到的術(shù)語之間進(jìn)行“手動”匹配創(chuàng)建的甘晤。

在ontoProc中含潘,這套數(shù)據(jù)作為示例已經(jīng)構(gòu)建好了。

 (stab <- seur3kTab())
  grp       markers       seurTutType                          formal        tag
1   0          IL7R       CD4 T cells      CD4-positive helper T cell CL:0000492
2   1     CD14, LYZ   CD14+ Monocytes          CD14-positive monocyte CL:0001054
3   2         MS4A1           B cells                          B cell CL:0000236
4   3          CD8A       CD8 T cells CD8-positive, alpha-beta T cell CL:0000625
5   4 FCGR3A, MS4A7 FCGR3A+ Monocytes                        monocyte CL:0000576
6   5    GNLY, NKG7          NK cells             natural killer cell CL:0000623
7   6  FCER1A, CST3   Dendritic Cells                  dendritic cell CL:0000451
8   7          PPBP    Megakaryocytes                   megakaryocyte CL:0000556

根據(jù)上表中非正式選擇的標(biāo)簽线婚,我們可以繪制連接相關(guān)細(xì)胞類型的細(xì)胞本體圖遏弱。ontoProc包通過make_graphNEL_from_ontology_plot向ontologyPlot添加功能。這允許對從本體結(jié)構(gòu)派生的圖形使用所有Rgraphviz和igraph可視化工具塞弊。

library(ontoProc)
cl = getCellOnto()
onto_plot2(cl, stab$tag)

這不就是我們期望已久的細(xì)胞類型之間的關(guān)系嗎漱逸?!這比軌跡推斷看起來友好很多啊居砖。

CLfeats函數(shù)跟蹤給定細(xì)胞本體類的關(guān)系和屬性虹脯。簡單地說驴娃,每個類都可以斷言它是其他類的intersection_of, has_part奏候、lacks_part、has_plasma_membrane_part, lacks_plasma_membrane_part可以斷言為細(xì)胞類型實(shí)例和細(xì)胞之間保持的關(guān)系唇敞。這些組成部分通常與蛋白質(zhì)本體或基因本體相互參照蔗草。當(dāng)?shù)鞍踪|(zhì)本體組件具有提供HGNC符號的同義詞時,cl專長會檢索該符號疆柔。在這里咒精,我們獲得了成熟的cd1a陽性真皮樹突狀細(xì)胞。

(CLfeats(cl, "CL:0002531"))
no recognized predicate references for CL:0000738
no recognized predicate references for CL:0000988
no recognized predicate references for CL:0000766
no recognized predicate references for CL:0000219
no recognized predicate references for CL:0000003
no recognized predicate references for CL:0000000
                  tag        prtag     cond                                           entity SYMBOL                                       name
1          CL:0002531 PR:000001310   hasPMP                                    CD83 molecule   CD83 mature CD1a-positive dermal dendritic cell
2          CL:0002531   GO:0042613  hiPMAmt                     MHC class II protein complex   <NA> mature CD1a-positive dermal dendritic cell
3          CL:0002531 PR:000001412  hiPMAmt                                    CD86 molecule   CD86 mature CD1a-positive dermal dendritic cell
4          CL:0002531 PR:000001438  hiPMAmt                                    CD80 molecule   CD80 mature CD1a-positive dermal dendritic cell
CL:0002529 CL:0002529 PR:000002025   hasPMP                 T-cell surface glycoprotein CD1a   CD1A        CD1a-positive dermal dendritic cell
11         CL:0001006 PR:000001012   hasPMP                                 integrin alpha-M  ITGAM                      dermal dendritic cell
21         CL:0001006 PR:000001026   hasPMP                            lymphocyte antigen 75   LY75                      dermal dendritic cell
31         CL:0001006 PR:000001084   hasPMP      T-cell surface glycoprotein CD8 alpha chain   CD8A                      dermal dendritic cell
CL:0000990 CL:0000990 PR:000001013  hiPMAmt                                 integrin alpha-X  ITGAX                conventional dendritic cell
12         CL:0000451 PR:000001002 lacksPMP                                    CD19 molecule   CD19                             dendritic cell
22         CL:0000451 PR:000001003 lacksPMP                                    CD34 molecule   CD34                             dendritic cell
32         CL:0000451 PR:000001020 lacksPMP                                      CD3 epsilon   CD3E                             dendritic cell
41         CL:0000451 PR:000001024 lacksPMP                  neural cell adhesion molecule 1  NCAM1                             dendritic cell
5          CL:0000451 PR:000001289 lacksPMP membrane-spanning 4-domains subfamily A member 1  MS4A1                             dendritic cell
6          CL:0000451   GO:0042613  hasPart                     MHC class II protein complex   <NA>                             dendritic cell
13         CL:0001010 PR:000001310   hasPMP                                    CD83 molecule   CD83               mature dermal dendritic cell
23         CL:0001010   GO:0042613  hiPMAmt                     MHC class II protein complex   <NA>               mature dermal dendritic cell
33         CL:0001010 PR:000001412  hiPMAmt                                    CD86 molecule   CD86               mature dermal dendritic cell
42         CL:0001010 PR:000001438  hiPMAmt                                    CD80 molecule   CD80               mature dermal dendritic cell
14         CL:0000841 PR:000001310   hasPMP                                    CD83 molecule   CD83         mature conventional dendritic cell
24         CL:0000841   GO:0042613  hiPMAmt                     MHC class II protein complex   <NA>         mature conventional dendritic cell
34         CL:0000841 PR:000001412  hiPMAmt                                    CD86 molecule   CD86         mature conventional dendritic cell
43         CL:0000841 PR:000001438  hiPMAmt                                    CD80 molecule   CD80         mature conventional dendritic cell

sym2CellOnto函數(shù)有助于在細(xì)胞類型的屬性或部分中發(fā)現(xiàn)給定的基因符號旷档。

if (!exists("cl")) cl = getCellOnto()
if (!exists("pr")) pr = getPROnto()
sym2CellOnto("ITGAM", cl, pr)

sym2CellOnto("ITGAM", cl, pr)
DataFrame with 64 rows and 4 columns
         sym     cond         cl                                                                   type
    <factor> <factor>   <factor>                                                               <factor>
1      ITGAM   hasPMP CL:0000040                                                              monoblast
2      ITGAM   hasPMP CL:0000094                                                            granulocyte
3      ITGAM   hasPMP CL:0000129                                                        microglial cell
4      ITGAM   hasPMP CL:0000559                                                            promonocyte
5      ITGAM   hasPMP CL:0000560                                                   band form neutrophil
...      ...      ...        ...                                                                    ...
60     ITGAM  loPMAmt CL:0002345                       CD27-low, CD11b-low immature natural killer cell
61     ITGAM  loPMAmt CL:0002349                               CD27-high, CD11b-low natural killer cell
62     ITGAM  loPMAmt CL:0002506                                    liver CD103-positive dendritic cell
63     ITGAM  loPMAmt CL:0002509            CD103-positive, langerin-positive lymph node dendritic cell
64     ITGAM  loPMAmt CL:0002511 CD11b-low, CD103-negative, langerin-negative lymph node dendritic cell

用戶可以向ontology_index結(jié)構(gòu)添加術(shù)語以“擴(kuò)展”細(xì)胞本體模叙。擴(kuò)展本體的任務(wù)在本質(zhì)上有一部分是官僚主義(bureaucratic )的,它依賴于對集中信息結(jié)構(gòu)的認(rèn)可和更新的集合鞋屈。為了允許對界面和新內(nèi)容進(jìn)行實(shí)驗(yàn)范咨,我們包括了一種將結(jié)構(gòu)類似于細(xì)胞本體中認(rèn)可的新本體“術(shù)語”組合到基于本體索引的本體索引實(shí)例的方法。

為了演示厂庇,我們考慮Bakken等人(2017)關(guān)于定義一組新細(xì)胞類型的“對角”表達(dá)模式的討論渠啊。一組基因被識別出來,細(xì)胞通過表達(dá)這組基因中的一個來區(qū)分权旷。


必要的信息被收集在一個向量中替蛉。載體是一組基因,i元素的名稱是與表達(dá)i基因的細(xì)胞類型相關(guān)的標(biāo)簽,不表達(dá)該集合中的任何其他基因躲查。

sigels = c("CL:X01"="GRIK3", "CL:X02"="NTNG1", "CL:X03"="BAGE2",
           "CL:X04"="MC4R", "CL:X05"="PAX6", "CL:X06"="TSPAN12", 
           "CL:X07"="hSHISA8", "CL:X08"="SNCG", "CL:X09"="ARHGEF28", 
           "CL:X10"="EGF")

cyclicyclicSigset函數(shù)生成一個data.frame實(shí)例它浅,將細(xì)胞類型與已表達(dá)或未表達(dá)的基因連接起來。cSigset函數(shù)生成一個data.frame實(shí)例镣煮,將細(xì)胞類型與已表達(dá)或未表達(dá)的基因連接起來罚缕。

cs = cyclicSigset(sigels)
> cs
        gene   type     cond
1   ARHGEF28 CL:X09   hasExp
2      GRIK3 CL:X09 lacksExp
3      NTNG1 CL:X09 lacksExp
4      BAGE2 CL:X09 lacksExp
5       MC4R CL:X09 lacksExp
6       PAX6 CL:X09 lacksExp
7    TSPAN12 CL:X09 lacksExp
8    hSHISA8 CL:X09 lacksExp
9       SNCG CL:X09 lacksExp
10       EGF CL:X09 lacksExp
11     BAGE2 CL:X03   hasExp
12     GRIK3 CL:X03 lacksExp
13     NTNG1 CL:X03 lacksExp
14      MC4R CL:X03 lacksExp
15      PAX6 CL:X03 lacksExp
16   TSPAN12 CL:X03 lacksExp
17   hSHISA8 CL:X03 lacksExp
18      SNCG CL:X03 lacksExp
19  ARHGEF28 CL:X03 lacksExp
20       EGF CL:X03 lacksExp
21       EGF CL:X10   hasExp
22     GRIK3 CL:X10 lacksExp
23     NTNG1 CL:X10 lacksExp
24     BAGE2 CL:X10 lacksExp
25      MC4R CL:X10 lacksExp
26      PAX6 CL:X10 lacksExp
27   TSPAN12 CL:X10 lacksExp
28   hSHISA8 CL:X10 lacksExp
29      SNCG CL:X10 lacksExp
30  ARHGEF28 CL:X10 lacksExp
31     GRIK3 CL:X01   hasExp
32     NTNG1 CL:X01 lacksExp
33     BAGE2 CL:X01 lacksExp
34      MC4R CL:X01 lacksExp
35      PAX6 CL:X01 lacksExp
36   TSPAN12 CL:X01 lacksExp
37   hSHISA8 CL:X01 lacksExp
38      SNCG CL:X01 lacksExp
39  ARHGEF28 CL:X01 lacksExp
40       EGF CL:X01 lacksExp
41   hSHISA8 CL:X07   hasExp
42     GRIK3 CL:X07 lacksExp
43     NTNG1 CL:X07 lacksExp
44     BAGE2 CL:X07 lacksExp
45      MC4R CL:X07 lacksExp
46      PAX6 CL:X07 lacksExp
47   TSPAN12 CL:X07 lacksExp
48      SNCG CL:X07 lacksExp
49  ARHGEF28 CL:X07 lacksExp
50       EGF CL:X07 lacksExp
51      MC4R CL:X04   hasExp
52     GRIK3 CL:X04 lacksExp
53     NTNG1 CL:X04 lacksExp
54     BAGE2 CL:X04 lacksExp
55      PAX6 CL:X04 lacksExp
56   TSPAN12 CL:X04 lacksExp
57   hSHISA8 CL:X04 lacksExp
58      SNCG CL:X04 lacksExp
59  ARHGEF28 CL:X04 lacksExp
60       EGF CL:X04 lacksExp
61     NTNG1 CL:X02   hasExp
62     GRIK3 CL:X02 lacksExp
63     BAGE2 CL:X02 lacksExp
64      MC4R CL:X02 lacksExp
65      PAX6 CL:X02 lacksExp
66   TSPAN12 CL:X02 lacksExp
67   hSHISA8 CL:X02 lacksExp
68      SNCG CL:X02 lacksExp
69  ARHGEF28 CL:X02 lacksExp
70       EGF CL:X02 lacksExp
71      PAX6 CL:X05   hasExp
72     GRIK3 CL:X05 lacksExp
73     NTNG1 CL:X05 lacksExp
74     BAGE2 CL:X05 lacksExp
75      MC4R CL:X05 lacksExp
76   TSPAN12 CL:X05 lacksExp
77   hSHISA8 CL:X05 lacksExp
78      SNCG CL:X05 lacksExp
79  ARHGEF28 CL:X05 lacksExp
80       EGF CL:X05 lacksExp
81      SNCG CL:X08   hasExp
82     GRIK3 CL:X08 lacksExp
83     NTNG1 CL:X08 lacksExp
84     BAGE2 CL:X08 lacksExp
85      MC4R CL:X08 lacksExp
86      PAX6 CL:X08 lacksExp
87   TSPAN12 CL:X08 lacksExp
88   hSHISA8 CL:X08 lacksExp
89  ARHGEF28 CL:X08 lacksExp
90       EGF CL:X08 lacksExp
91   TSPAN12 CL:X06   hasExp
92     GRIK3 CL:X06 lacksExp
93     NTNG1 CL:X06 lacksExp
94     BAGE2 CL:X06 lacksExp
95      MC4R CL:X06 lacksExp
96      PAX6 CL:X06 lacksExp
97   hSHISA8 CL:X06 lacksExp
98      SNCG CL:X06 lacksExp
99  ARHGEF28 CL:X06 lacksExp
100      EGF CL:X06 lacksExp

將data.frame元素轉(zhuǎn)換為OBO術(shù)語實(shí)例。新OBO術(shù)語構(gòu)建最復(fù)雜的是如何正確規(guī)范與現(xiàn)有本體組件之間的關(guān)系怎静。通過編程方式為對角模式任務(wù)生成一個主要由所有術(shù)語共享的序言邮弹。

makeIntnProlog = function(id, ...) {
  # make type-specific prologs as key-value pairs
  c(  
    sprintf("id: %s", id),
    sprintf("name: %s-expressing cortical layer 1 interneuron, human", ...),
    sprintf("def: '%s-expressing cortical layer 1 interneuron, human described via RNA-seq observations' [PMID 29322913]", ...),
    "is_a: CL:0000099 ! interneuron",
    "intersection_of: CL:0000099 ! interneuron")
}
pmap = c("hasExp"="has_expression_of", lacksExp="lacks_expression_of")
head(unlist(tms <- ldfToTerms(cs, pmap, sigels, makeIntnProlog)), 20)

##  [1] "[Term]"                                                                                                        
##  [2] "id: CL:X01"                                                                                                    
##  [3] "name: GRIK3-expressing cortical layer 1 interneuron, human"                                                    
##  [4] "def: 'GRIK3-expressing cortical layer 1 interneuron, human described via RNA-seq observations' [PMID 29322913]"
##  [5] "is_a: CL:0000099 ! interneuron"                                                                                
##  [6] "intersection_of: CL:0000099 ! interneuron"                                                                     
##  [7] "has_expression_of: PR:000008242 ! GRIK3"                                                                       
##  [8] "lacks_expression_of: PR:000011467 ! NTNG1"                                                                     
##  [9] "lacks_expression_of: PR:000004625 ! BAGE2"                                                                     
## [10] "lacks_expression_of: PR:000001237 ! MC4R"                                                                      
## [11] "lacks_expression_of: PR:000012318 ! PAX6"                                                                      
## [12] "lacks_expression_of: PR:000016738 ! TSPAN12"                                                                   
## [13] "lacks_expression_of: PR:B8ZZ34 ! hSHISA8"                                                                      
## [14] "lacks_expression_of: PR:000015325 ! SNCG"                                                                      
## [15] "lacks_expression_of: PR:000013942 ! ARHGEF28"                                                                  
## [16] "lacks_expression_of: PR:000006928 ! EGF"                                                                       
## [17] "[Term]"                                                                                                        
## [18] "id: CL:X02"                                                                                                    
## [19] "name: NTNG1-expressing cortical layer 1 interneuron, human"                                                    
## [20] "def: 'NTNG1-expressing cortical layer 1 interneuron, human described via RNA-seq observations' [PMID 29322913]"

之后就可以將tms中的內(nèi)容附加到細(xì)胞本體cl的內(nèi)容中。obo作為文本蚓聘,用于使用ontologyIndex::get_OBO導(dǎo)入腌乡。

對于使用本體進(jìn)行R編程非常有用的CRAN包是Westbury等人(2015)寫的ontologyIndex。這為解析OBO格式的本體以及對文本字段和列表結(jié)構(gòu)執(zhí)行基本查詢提供了易用的函數(shù)夜牡。

讓我們想象一番与纽。想象Cell Ontology的應(yīng)用場景,最直接的類比就是GO了塘装。所以急迂,是時候應(yīng)用一套規(guī)范的語義來描繪細(xì)胞類型了。



he Cell Ontology is a structured controlled vocabulary for cell types in animals.
Gene Ontology overview
Cell Line Ontology:Redesigning the Cell Line Knowledgebase to Aid Integrative Translational Informatics
OncoCL: A Cancer Cell Ontology
The Cell Cycle Ontology: an application ontology for the representation and integrated analysis of the cell cycle process
Cell type discovery and representation in the era of high-content single cell phenotyping
The Cell Ontology is a structured controlled vocabulary for cell types in animals.
ontologies
vignettes||ontoProc

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蹦肴,一起剝皮案震驚了整個濱河市僚碎,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌阴幌,老刑警劉巖勺阐,帶你破解...
    沈念sama閱讀 206,126評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異矛双,居然都是意外死亡渊抽,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評論 2 382
  • 文/潘曉璐 我一進(jìn)店門议忽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來懒闷,“玉大人,你說我怎么就攤上這事栈幸》吖溃” “怎么了?”我有些...
    開封第一講書人閱讀 152,445評論 0 341
  • 文/不壞的土叔 我叫張陵侦镇,是天一觀的道長灵疮。 經(jīng)常有香客問我,道長壳繁,這世上最難降的妖魔是什么震捣? 我笑而不...
    開封第一講書人閱讀 55,185評論 1 278
  • 正文 為了忘掉前任荔棉,我火速辦了婚禮,結(jié)果婚禮上蒿赢,老公的妹妹穿的比我還像新娘润樱。我一直安慰自己,他們只是感情好羡棵,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評論 5 371
  • 文/花漫 我一把揭開白布壹若。 她就那樣靜靜地躺著,像睡著了一般皂冰。 火紅的嫁衣襯著肌膚如雪店展。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評論 1 284
  • 那天秃流,我揣著相機(jī)與錄音赂蕴,去河邊找鬼。 笑死舶胀,一個胖子當(dāng)著我的面吹牛概说,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播嚣伐,決...
    沈念sama閱讀 38,276評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼糖赔,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了轩端?” 一聲冷哼從身側(cè)響起放典,我...
    開封第一講書人閱讀 36,927評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎船万,沒想到半個月后刻撒,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體骨田,經(jīng)...
    沈念sama閱讀 43,400評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡耿导,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了态贤。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片舱呻。...
    茶點(diǎn)故事閱讀 37,997評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖悠汽,靈堂內(nèi)的尸體忽然破棺而出箱吕,到底是詐尸還是另有隱情,我是刑警寧澤柿冲,帶...
    沈念sama閱讀 33,646評論 4 322
  • 正文 年R本政府宣布茬高,位于F島的核電站,受9級特大地震影響假抄,放射性物質(zhì)發(fā)生泄漏怎栽。R本人自食惡果不足惜丽猬,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望熏瞄。 院中可真熱鬧脚祟,春花似錦、人聲如沸强饮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽邮丰。三九已至行您,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間剪廉,已是汗流浹背邑雅。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留妈经,地道東北人淮野。 一個月前我還...
    沈念sama閱讀 45,423評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像吹泡,于是被迫代替她去往敵國和親骤星。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評論 2 345