軟件應(yīng)用:PHESANT:用于自動(dòng)化表型組掃描UK生物庫(kù)的工具

PHESANT

書(shū)到用時(shí)方恨少,今天來(lái)學(xué)習(xí)一下英國(guó)生物數(shù)據(jù)庫(kù)中用于表型關(guān)聯(lián)分析的工具,以下主要內(nèi)容是對(duì)截圖所示文章的翻譯。

摘要

動(dòng)機(jī):流病隊(duì)列常常包含不同類(lèi)型的表型數(shù)據(jù),自動(dòng)化掃描表型組并不簡(jiǎn)單,需要非常異質(zhì)化(highly heterogeneous)的模型。因此,到目前為止,表型組掃描往往使用統(tǒng)一的方法,分析一部分同質(zhì)的表型。我們開(kāi)發(fā)了PHESANT(PHEnome Scan ANalysis Tool),用于整合掃描UK生物庫(kù)中的表型組。

一般特性:PHESANT檢驗(yàn)特定性狀,與UK生物庫(kù)或特定子集中,所有連續(xù)型、整型和分類(lèi)變量的關(guān)聯(lián)。PHESANT使用基于規(guī)則的新算法來(lái)確定如何恰當(dāng)?shù)貦z驗(yàn)每一個(gè)性狀,然后執(zhí)行分析,輸出圖和描述性表格。

實(shí)現(xiàn):PHESANT的表型組掃描部分是用R實(shí)現(xiàn)的,整體包括基于Javascript D3.js 的可視化,以及相應(yīng)的Java代碼(可將表型組掃描分析結(jié)果轉(zhuǎn)化為需要的JavaScript Object Notation (JSON) 格式)。

可用性:PHESANT已托管至GitHub[https://github.com/MRCIEU/PHESANT]。


導(dǎo)言

表型組掃描檢驗(yàn)?zāi)硞€(gè)性狀與一系列表型(即表型)的關(guān)聯(lián)。表型組掃描大致分為全表型組關(guān)聯(lián)研究(phenome-wide association studies,pheWAS),孟德?tīng)栯S機(jī)化pheWAS(Mendelian randomization-pheWAS,MR-pheWAS)和全環(huán)境關(guān)聯(lián)分析(environment-wide association studies,EnWAS)。PheWAS致力于研究某個(gè)遺傳變異與一系列表型化的性狀的關(guān)聯(lián)。最近,pheWAS的研究進(jìn)一步擴(kuò)大,MR-pheWAS,在pheWAS的框架下使用孟德?tīng)栯S機(jī)化搜索特定暴露因素的因果效應(yīng)。EnWAS致力于檢驗(yàn)?zāi)硞€(gè)性狀和其他表型的關(guān)聯(lián)。

? ? 流病隊(duì)列通常包含大量不同的表型,因此無(wú)法簡(jiǎn)單地自動(dòng)化檢驗(yàn)這些表型與另一個(gè)性狀的關(guān)聯(lián)。因此,研究者們?nèi)粝胱霰硇徒M分析,往往會(huì)指定一些同類(lèi)型的性狀,以便統(tǒng)一地自動(dòng)化分析這些性狀中的關(guān)聯(lián)。比如,pheWAS起初用統(tǒng)一的檢驗(yàn)方法,分析電子醫(yī)療檔案中的國(guó)際疾病分類(lèi)(international classification of disease,ICD)編號(hào),將每種疾病編碼視為二分類(lèi)變量。然而,僅研究一部分表型只能看到一部分與某個(gè)表型的關(guān)聯(lián),減少了發(fā)現(xiàn)新關(guān)聯(lián)的可能。

? ? 本文提供PHESANT(PHEnome Scan ANalysis Tool),一個(gè)可平行化地用于UK生物庫(kù)——來(lái)自英國(guó)約500,000名37至73歲的男性和女性的前瞻性隊(duì)列——表型組掃描的工具。該隊(duì)列包括遺傳數(shù)據(jù)和大量不同類(lèi)型的數(shù)據(jù),分別來(lái)自血液、尿和唾液的檢測(cè)、臨床評(píng)估,記錄鏈接(record linkage,整合不同的數(shù)據(jù)源中來(lái)自同一實(shí)體的數(shù)據(jù)集)以及健康和生活調(diào)查問(wèn)卷。利用豐富且大量的數(shù)據(jù),研究者通過(guò)表型組掃描,更有可能發(fā)現(xiàn)新的關(guān)聯(lián)。

實(shí)現(xiàn)

PHESANT是用R實(shí)現(xiàn)的,需要以下R包:optparse, MASS, lmtest,nnet,forestplot和 data.table。PHESANT的輸入是包含一組表型、需研究的性狀(依研究類(lèi)型而定,如pheWAS、MR-pheWAS或EnWAS,輸入分別是SNP、遺傳評(píng)分或表型化的性狀)以及混淆因素(需研究的性狀和混淆因素也可以分不同文件)。PHESANT還需利用兩個(gè)數(shù)據(jù)文件,收集了UK生物庫(kù)隊(duì)列中變量相關(guān)的信息:(i)數(shù)據(jù)編碼信息;和(ii)變量信息。接下來(lái)的例子中將提及這些文件,稍作修改即可用于特定的表型組掃描。更多相關(guān)數(shù)據(jù)和信息文件,可在GitHub中查看。最后,將介紹PHESANT中的變量處理流程(variable processing flow)。

確定變量編碼的自動(dòng)化處理流程

為了自動(dòng)化檢驗(yàn)特定性狀與一系列不同類(lèi)型的表型的關(guān)聯(lián),我們開(kāi)發(fā)了基于規(guī)則確定每個(gè)變量合適的編碼和相應(yīng)的關(guān)聯(lián)檢驗(yàn)的系統(tǒng)(見(jiàn)圖1)。決定規(guī)則從UK生物庫(kù)指定的變量字段類(lèi)型(variable field type,見(jiàn)http://biobank.ctsu.ox.ac.uk/showcase/list.cgi)開(kāi)始,要么連續(xù)型、整型、分類(lèi)型(單)或分類(lèi)型(多),再將這些變量分類(lèi)為以下四種數(shù)據(jù)類(lèi)型:連續(xù)型、有序分類(lèi)型、無(wú)序分類(lèi)型和二分類(lèi)型。分類(lèi)型(單)字段類(lèi)型指的是分類(lèi)字段(包括二分類(lèi)型),其中每個(gè)參與者只能有一個(gè)值。比如,問(wèn)卷中,參與者被問(wèn)到“如何描述你通常的步行速度?”,選項(xiàng)包含“慢”、“平均”和“快”(字段ID是924)。相比之下,分類(lèi)型(多)字段對(duì)每個(gè)參與者而言,有多個(gè)值。比如,問(wèn)卷中,參與者被問(wèn)到前一天早上吃什么面包(字段ID是20091),可能同時(shí)選白和全麥。當(dāng)某字段在多個(gè)時(shí)間點(diǎn)測(cè)量,僅保留首次出現(xiàn)的值。連續(xù)型和整型變量可能在第一個(gè)測(cè)量時(shí)間點(diǎn)有多個(gè)測(cè)量值(常常是為了提升測(cè)量的估計(jì)精確度)。比如,一段時(shí)間內(nèi),肺活量會(huì)測(cè)兩到三次,以字段3062[http://biobank.ctsu.ox.ac.uk/showcase/field.cgi?id=3062]為例。遇到這類(lèi)情形,取均值。


Figure 1. Variable processing flow diagram showing logic from defined field type specified by UK Biobank to test of association. Triangular nodes at top of figure are field types defined by UK Biobank. Rectangular nodes show processing logic used to determine the data type assignment (oval), either continuous, ordered categorical, unordered categorical or binary, and hence finally, the type of test used: linear, ordinal logistic, multinomial logistic or logistic regression, respectively. Diamond nodes show points where variables may be removed.

? ? 連續(xù)型字段類(lèi)型中的變量通常被歸為連續(xù)型數(shù)據(jù)類(lèi)型。在這種情況下,變量將通過(guò)inverse normal rank transformation轉(zhuǎn)換為正態(tài)分布。在少數(shù)情況下,連續(xù)型字段將被歸為有序分類(lèi)型數(shù)據(jù)類(lèi)型(如果僅含兩種不同的值,則轉(zhuǎn)為二分類(lèi)型)。比如,字段100022包含估計(jì)飲酒量,基于問(wèn)卷“回憶24小時(shí)內(nèi)的飲食”中的回復(fù)。大部分參與者在此字段是零值,因?yàn)樗麄儾伙嬀?。不能inverse normal rank transform此變量,因?yàn)榇蟛糠謪⑴c者具有相同的值,轉(zhuǎn)換中隨機(jī)排序,將給數(shù)據(jù)增加噪音。相反,我們將此變量轉(zhuǎn)換為三類(lèi),每類(lèi)的人數(shù)大致相同(在不同值之間設(shè)置分割點(diǎn)),然后當(dāng)作有序分類(lèi)變量(見(jiàn)附件S3中的算法)。整型字段類(lèi)型的變量通常和連續(xù)型變量一樣處理。在少數(shù)情況下,不同的取值少于或等于20個(gè),我們將此變量當(dāng)作有序分類(lèi)型(或二分類(lèi)型如果只有兩個(gè)不同取值)。

? ? 分類(lèi)型(單)變量可能被歸為二分類(lèi)、有序分類(lèi)或無(wú)序分類(lèi)數(shù)據(jù)類(lèi)型。UK生物庫(kù)將負(fù)數(shù)歸為表示缺失的類(lèi)別(比如“不想回答”和“不知道”),因此將負(fù)數(shù)重編碼為“NA”。UK生物庫(kù)定義了一個(gè)或多個(gè)字段歸類(lèi)后的“數(shù)據(jù)編碼”(defines 'data codes' to which one or more fields are assigned),并且為這些字段及其數(shù)值定義了一系列分類(lèi)值。PHESANT數(shù)據(jù)編碼信息文件確定了分類(lèi)型(單)字段的數(shù)據(jù)編碼,說(shuō)明它是一個(gè)有序或者無(wú)序的分類(lèi)結(jié)構(gòu),然后用此信息將每個(gè)非二分類(lèi)型(單)字段歸為有序型或無(wú)序型分類(lèi)數(shù)據(jù)類(lèi)型。

? ? 每個(gè)分類(lèi)型(多)變量被轉(zhuǎn)換為一系列二分類(lèi)變量,說(shuō)明該參與者是否具有此類(lèi)指定值。比如,對(duì)于描述昨天吃的面包變量(字段ID為20091),值為“白”、“混合”、“全麥”、“多籽”和“其它”,將產(chǎn)生五個(gè)二分類(lèi)變量:白={真,假}全麥={真,假}等。如果有人在此字段上沒(méi)有值,那么分類(lèi)型(多)字段將更復(fù)雜,這可能是因?yàn)椋?i)該字段值不全——未包含所有可能的值(如,某個(gè)參與者不吃面包不會(huì)選以上任何一個(gè)選項(xiàng));或(ii)由于數(shù)據(jù)缺失(比如,參與者沒(méi)答此題)。這將影響如何賦值,比如,當(dāng)白=假,要么是:(i)所有選擇除“白”以外選項(xiàng)的人;(ii)所有回復(fù)了問(wèn)卷,但未選“白”的人;或是(iii)未選擇“白”的人,且包括那些未回復(fù)問(wèn)卷的人(見(jiàn)補(bǔ)充圖3示意)。在這種情況下,第二個(gè)選項(xiàng)更好,比較那些吃白面包的人和回復(fù)了問(wèn)卷但是不吃白面包的人。因此需針對(duì)每個(gè)變量單獨(dú)分析,在PHESANT變量信息文件中可以指定。補(bǔ)充材料S1有更多細(xì)節(jié)。


Supplementary figure 3: Venndiagrams illustrating options for assignment of value ‘white’=false forgenerating binary values from field 20091. Shadedpink area denotes three alternative sets of participants, that can be assigned value ‘white’=false.

? ? 一些分類(lèi)型(多)字段包括負(fù)值,代表缺失(比如“不知道”)。因?yàn)闊o(wú)法確定他們是否與該二分類(lèi)變量的真值有關(guān),需從轉(zhuǎn)換出的二分類(lèi)變量為的人群中排除該分類(lèi)型(多)字段存在缺失的參與者。以字段41228[http://biobank.ctsu.ox.ac.uk/showcase/field.cgi?id=41228]為例,描述的參與者接生醫(yī)生的類(lèi)型,比如某個(gè)參與者曾有兩次生育,在此項(xiàng)選擇“助產(chǎn)士”和“不知道”。在助產(chǎn)士的二分類(lèi)變量這一項(xiàng),符合助產(chǎn)士=真(midwife=true)的參與者集合包括該參與者,因?yàn)橹辽儆幸淮沃a(chǎn)士為其接生。然而,不能肯定某個(gè)住院醫(yī)生沒(méi)有為該參與者接生,因?yàn)椤安恢馈笨赡苤傅氖恰白≡横t(yī)生”。因此,在“住院醫(yī)生”的二分類(lèi)變量這一項(xiàng),符合住院醫(yī)生=假(hospital_doctor = false)的參與者集合就不包括該參與者, 因?yàn)榇隧?xiàng)未知。

檢驗(yàn)?zāi)硞€(gè)性狀的關(guān)聯(lián)

在恰當(dāng)?shù)貙⒚總€(gè)表型編碼并歸類(lèi)為四種數(shù)據(jù)類(lèi)型之一后(連續(xù)型、有序分類(lèi)型、無(wú)序分類(lèi)型和二分類(lèi)型)后,將檢驗(yàn)需研究性狀和所有表型的關(guān)聯(lián),具體如下。表型和該性狀分別為回歸的自變量和因變量。所有的回歸都校正招募時(shí)的年齡和性別(如果該性狀具有遺傳性,再加上基因型),或者如果指定了混淆文件(confounder file),則校正混淆文件中的所有變量。對(duì)轉(zhuǎn)換后的連續(xù)型數(shù)據(jù)類(lèi)型,用線性回歸(R函數(shù)lm)檢驗(yàn)關(guān)聯(lián)。對(duì)有序分類(lèi)型、無(wú)序分類(lèi)型和二分類(lèi)型變量,分別用有序邏輯斯蒂回歸(R函數(shù)polr)、多項(xiàng)式邏輯斯蒂回歸(R函數(shù)multinom)和二項(xiàng)式回歸(R函數(shù)glm,family參數(shù)設(shè)為binomial)。當(dāng)樣本量低于500時(shí),不檢驗(yàn)該變量,這種情況通常出現(xiàn)在對(duì)子人群進(jìn)一步提問(wèn)的少部分字段(比如,字段22148[http://biobank.ctsu.ox.ac.uk/showcase/field.cgi?id=22148])。當(dāng)分類(lèi)變量的類(lèi)別多于1000種(超過(guò)multinom函數(shù)的默認(rèn)最大值),也不檢驗(yàn),在下文使用說(shuō)明中有一個(gè)例子(字段132[http://biobank.ctsu.ox.ac.uk/showcase/field.cgi?id=132])。

用PHESANT做個(gè)性化表型組掃描分析

PHESANT允許研究者通過(guò)簡(jiǎn)單修改數(shù)據(jù)編碼和變量信息文件,實(shí)現(xiàn)個(gè)性化表型組掃描分析。具體如下:

?改變變量的數(shù)值型取值(比如將取值再編碼為缺失)或者有序分類(lèi)變量的取值順序;

?當(dāng)分類(lèi)型(單)變量存在表意不明的取值時(shí),賦予缺省值(見(jiàn)補(bǔ)充部分S1);

?將分類(lèi)型(單)字段改為分類(lèi)型(多)字段類(lèi)型,這對(duì)一部分字段可能比較合適;

?指定哪個(gè)變量在表型組掃描前應(yīng)該被剔除;

?指定表型組數(shù)據(jù)中哪些字段基本上與需研究的性狀一致[比如,體重、身高體重指數(shù)(BMI)],這樣在表型組掃描分析后,字段與性狀之間關(guān)聯(lián)的結(jié)果將僅用于驗(yàn)證,不在結(jié)果中,避免不必要的多重檢驗(yàn)。

? ? 以下兩種方式可以進(jìn)一步幫助實(shí)現(xiàn)個(gè)性化分析:

i.用戶(hù)可以在運(yùn)行之前調(diào)整數(shù)據(jù),比如,用中位數(shù)而不是均值整合連續(xù)型數(shù)值,或者整合某字段多個(gè)時(shí)間點(diǎn)的數(shù)據(jù)。

ii.用戶(hù)可以保存PHESANT處理好的表型,進(jìn)一步用這些變量做個(gè)性化分析。

結(jié)果輸出

PHESANT對(duì)結(jié)果中的p值排序,輸出結(jié)果文件、QQ圖,對(duì)連續(xù)型、有序分類(lèi)型和二分類(lèi)型中低于Bonferroni校正閾值的結(jié)果繪制森林圖[無(wú)法保證無(wú)序分類(lèi)型結(jié)果中的森林圖,因?yàn)椴](méi)有這些模型整體的預(yù)估(和置信區(qū)間),模型p值來(lái)源于似然比例檢驗(yàn)]。


其余部分是關(guān)于PHESANT-viz如何網(wǎng)頁(yè)可視化表型組掃描結(jié)果、案例展示和使用說(shuō)明和討論,暫時(shí)不譯,未完待續(xù)。



最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
禁止轉(zhuǎn)載,如需轉(zhuǎn)載請(qǐng)通過(guò)簡(jiǎn)信或評(píng)論聯(lián)系作者。

友情鏈接更多精彩內(nèi)容