很久沒有管這個(gè)包了,今天更新了一個(gè)新的特性,查看數(shù)據(jù)集鏈接。
更新已經(jīng)提交到CRAN上了,可能過個(gè)一兩天就可以直接install.packages()了?,F(xiàn)在想試試的話,使用下面命令安裝Github版本:
remotes::install_github("ShixiangWang/UCSCXenaTools", build_vignettes = TRUE)
新特性
當(dāng)使用XenaFilter()過濾完數(shù)據(jù)后,可能我們想要做的事情不是立即下載,而是堅(jiān)持下數(shù)據(jù)集是不是我們想要下載的。利用新添加的XenaBrowse()函數(shù),用戶可以直接打開數(shù)據(jù)集頁面!
比如,下面過濾出TCGA LUAD的臨床數(shù)據(jù):
XenaGenerate(subset = XenaHostNames=="TCGA") %>%
XenaFilter(filterDatasets = "clinical") %>%
XenaFilter(filterDatasets = "LUAD") -> to_browse
to_browse
#> class: XenaHub
#> hosts():
#> https://tcga.xenahubs.net
#> cohorts() (1 total):
#> TCGA Lung Adenocarcinoma (LUAD)
#> datasets() (1 total):
#> TCGA.LUAD.sampleMap/LUAD_clinicalMatrix
這里只包含一個(gè)cohort的一個(gè)數(shù)據(jù)集,我們可以使用XenaBrowse()函數(shù)查看cohort頁面和dataset頁面。
# 下面會(huì)打開數(shù)據(jù)集頁面
XenaBrowse(to_browse)
# 下面會(huì)打開cohort頁面
XenaBrowse(to_browse, type = "cohort")
如果包含多個(gè)數(shù)據(jù)集,直接使用這個(gè)命名會(huì)報(bào)錯(cuò),這是我故意這樣設(shè)計(jì)的,如果你過濾后的有幾百個(gè)數(shù)據(jù)集,你傻不溜秋去打開它?如果你確定想要打開它們,加一個(gè)multiple=TRUE選項(xiàng)即可。
更多信息閱讀https://cran.r-project.org/web/packages/UCSCXenaTools/vignettes/USCSXenaTools.html#browse-datasets。
一些相關(guān)的話
在我的邏輯里,理解UCSCXenaTools這個(gè)包的使用需要有從UCSC Xena用鼠標(biāo)點(diǎn)擊下載數(shù)據(jù)的經(jīng)歷,當(dāng)你發(fā)現(xiàn)你需要批量下載數(shù)據(jù)集,而下載的數(shù)據(jù)鏈接似乎存在某種規(guī)律時(shí),你就可以使用這個(gè)包了。
因?yàn)閄ena Data Hubs的底層邏輯并不是非常清楚(至少難以企及TCGA),不過它確實(shí)存在某些規(guī)律,這些規(guī)律被XenaR包提取了出來,然后我在XenaR包的基礎(chǔ)上進(jìn)一步解析,才有了今天的UCSCXenaTools。
這個(gè)包的使用范圍不是特別廣泛,目前下載量月均幾百,沒有特別大的Bug,所以我所需要做的就是少量的維護(hù)和更新。伴隨這個(gè)包的更新,我對于包開發(fā)本身也有了不少的進(jìn)步。比如,為什么我從0.2.7直接改版本號(hào)到1.0.0了?因?yàn)樵撟龅幕径甲隽?,所以我想給它一個(gè)正式的版本號(hào)。
之前我對于這個(gè)包開發(fā)的方向是構(gòu)建一個(gè)本地非常高效的Shiny,用于用戶可以在本地進(jìn)行數(shù)據(jù)集的過濾和選擇下載。但目前想了想已經(jīng)放棄了,就算實(shí)現(xiàn)了跟本來的Xena網(wǎng)頁下載有什么太大的區(qū)別?可以促進(jìn)代碼的流程化?顯然都不能。(非應(yīng)用)包開發(fā)的目的本身就是提供更易用的接口,讓用戶可以不斷組合實(shí)現(xiàn)優(yōu)雅的代碼流、分析和結(jié)果。
最后這個(gè)包如果真的幫助到你了,不妨幫我在https://github.com/ShixiangWang/UCSCXenaTools點(diǎn)個(gè)Star,謝謝。