一つのR関数は生物学のIDの転換の問題を解決します

1655 ワード

前言:
バイオID変換は,我々が種々のバイオデータを扱う際にしばしば遭遇する問題である.通常、2つの方法があります.1つはオンラインサイトを使用することで、最も有名なのはbiomartとdb 2 dbです.もう1つは、ローカルソフトウェアclusterProfiler::bitrを使用することである.
オンライン変換プロセスは面倒で、ファイルのアップロードとダウンロードが必要で、二次処理が必要です.また、変換回数が多ければ、完了しにくくなります.ローカル変換のデータベースの更新速度が遅く、多くの変換が完了せず、変換回数が少ない.
簡単な例を挙げると、このプロジェクトの下にサンプルファイルtest_があります.name.txt.ファイルは100個Ensmebl Trans IDです.下流分析を実行する場合は、Gene Symbolに変換する必要があります.bitr関数を使用すると、少量のマッピングしか得られません.
library(clusterProfiler)
library(org.Hs.eg.db)
keytypes(org.Hs.eg.db)
# [1] "ACCNUM"       "ALIAS"        "ENSEMBL"      "ENSEMBLPROT"  "ENSEMBLTRANS" "ENTREZID"    
# [7] "ENZYME"       "EVIDENCE"     "EVIDENCEALL"  "GENENAME"     "GO"           "GOALL"       
#[13] "IPI"          "MAP"          "OMIM"         "ONTOLOGY"     "ONTOLOGYALL"  "PATH"        
#[19] "PFAM"         "PMID"         "PROSITE"      "REFSEQ"       "SYMBOL"       "UCSCKG"      
#[25] "UNIGENE"      "UNIPROT" 
result

しかし、bioDBnetのWebサイトから情報を取得すると、一致しないIDが2つしかありません.そのため、Webサイトのapiをパッケージ化することで、オンライン変換の弊害を減らし、変換効率を向上させたいと思っています.
使用方法
library(RCurl)
#library(httr) 
## if your compute is windows,you should use httr instead of rcurl
library(rjson)
library(tidyr)
###read example data
data

最後に、コードはbitr_を参照してください.db2db.R
注意:Windowsを使用してエラーを報告している場合は、このbitr_を試してみることをお勧めします.db2db_forwindows.R