Publications referring to NGS data に新データの追加
http://sra.dbcls.jp/cgi-bin/publication.cgiに新しくPubMedと次世代シークエンサ(NGS)のデータIDの対応を追加しました.
今回追加新たに追加したものは,PubMedのMeSHで"High-Throughput Nucleotide Sequencing"が付いているものです.6月22日に25件ほど追加しています.
追加の流れ
以下の手順で追加しました.id:meguu08 と共に作業しています.
1. eutils経由で High-Throughput Nucleotide Sequencing のMeSHが付いた論文のPubMed ID(PMID)を取得 2. PMIDから次世代シークエンサデータのIDを抽出 3. 2.で抽出した次世代シークエンサのIDはSubmission,Study,Experiment,Sample,Run,Analysisと混ざっているので,Submission(SRAかDRAから始まる)IDに統一する 4. 登録されていない論文と次世代シークエンサのIDを新たにデータベースに追加
2. では,eutilsからxmlファイルを取得できない論文があるので,それらは直接ジャーナルサイトから取得しています.現在対応しているのは,以下のジャーナルです.
・Genome Research
・Proc. Natl. Acad. Sci. U.S.A.
・Nature
・Science (New York, N.Y.)
・Genes & Development
・Nature methods
・Nature genetics
・Nature biotechnology
・Bioinformatics
・The Plant Cell
・Briefings in Functional Genomics and Proteomics
今後,PubMedのMeSH以外にデータを追加しようと思っているので,後日HPに更新情報の追記をしたいと思います.
Journal サイトから論文を取得
PubMed Central(PMC)では論文がfreeで公開されていますが,Entrez Utilities 経由ではxml形式で論文が利用できない論文があります.(Webブラウザであれば,freeで論文を見る事はできます.)
このxml形式で利用できない論文数がかなりあるため,これらの論文をJournalサイトから取得するようにしました.この方法で取得できるファイルはhtml形式です.
論文の取得方法
これまでは,次の3ステップで論文のxmlファイルを取得していました.
1. PubMedのIDから,PubMedのxmlファイルを取得する.
2.(公開されていれば)取得したxmlファイルから,PMCのIDを抽出する
3. PMCのIDから,xmlファイルを取得する.
PubMedとPMCのファイル取得は,Entrez Utilities経由で行っています.これに次のステップ追加し,論文のhtmlファイルを取得します.
4. PMCのxmlファイルに論文本文が載っていなければ,Journalサイトにアクセス,htmlファイルを保存する.
xml形式で利用できない論文の場合,2.で取得したPMCのxmlファイルに次の一文が記載されています.
"The publisher of this article does not allow downloading of the full text in XML form."
(参考:放牧27日目:this article does not allow downloading... - meguu08の日記になれない覚え書き)
Entrez Utilities で取得したxmlファイルに上記の文が含まれていたら,4. Journalサイトにアクセスし,htmlファイルを保存します.
現時点で取得できる様にしたJournalは,次の二つです.
・ Proceedings of the National Academy of Sciences
・ Genome Research
この二つは,どちらもJournalサイトの論文のアドレスが
"Journal固定の文字列1"/volume/issue/fpage/"Journalの文字列2"
の形式になっており,volume,issue,fpage(論文が始まるページ)が分かればhtmlファイルを取得できます.この3つの情報は,2. で取得したxmlファイルから抽出できます.(PMCから取得したxmlファイルには,論文の本文はありませんが,掲載されている雑誌の情報は載っています.)
上記の方法で作成したアドレスにアクセスして,html形式でファイルを取得し,このhtmlファイルを解析しています.
この方法では,Journalサイトから取得できるのはhtml形式です.xml形式のファイルを解析したい場合には,今回の方法は適応できません.また,Jounalサイトに頻繁にアクセスしなければならないので,別の方法が思いついたら改善しようと思います.
XMLで取得できない論文
現在,PubMed Central(PMC)から論文を取得して解析しています.PMCに登録されている論文は全文利用できるのですが,登録されている論文の中にはXML形式でファイルを取得できない論文があります.(参考:放牧27日目:this article does not allow downloading... - meguu08の日記になれない覚え書き)
これまで,XMLファイルを取得して解析してきましたが,上記の事が原因で,実は解析できていなかった論文がある事が判明しました.
今回の目的
PMCに登録されている論文で,XMLで取得できない論文がどの程度あるのか調べました.今回は,http://www.illuminakk.co.jp/support/literature_GA1.shtml にある論文でPMCに登録されているものについて調査しています.
敵を知る(10月第1週の勤務)
論文に書かれている塩基配列を抽出し,論文をゲノム配列にマッピングする事で,ゲノム配列の特定箇所について書かれた論文リストを作成する事を行っています.
これには先行研究http://text2genome.smith.man.ac.uk/about.cgiがあります.今週はこのText2Genomeについて調べました.(先週の時点では,Text2Genomeのサイトを発見していませんでした.@yag_aysさん,ありがとうございます.)
Text2Genome
この研究では,以下の手順で論文をゲノム配列にマッピングしています.(この研究の論文が見つからなかったため,推測も含まれています.)
1. PubMed Central で利用できる論文から,塩基配列を抽出.(配列を抽出できた論文数:約35,000)
2. 論文から抽出した配列を,GenBankに登録されているゲノム配列にマッピング(Blastを使用?,マッピングできた論文数:約28,000)
3. GenBankにマッピングできた配列の中でも,マッピングのクオリティが高いものに選定(選定結果の論文数:約10,000)
論文数は,http://text2genome.smith.man.ac.uk/download.cgiで公開されているデータをもとに推定しました.
今後の方向性
思っていたよりもText2Genomeで解析されている論文数が多かった,というのが正直な感想です.今後,改良できそうな事を以下に挙げます.
1. 高いクオリティでマップできた論文が減少
配列を取得できた論文数が約35,000に対して,ゲノム配列に高いクオリティでマップできた論文数が約10,000であり,マップしている論文が減少しています.
(1) 原因で考えられる事と解決策 その1
[原因] 配列情報のみを使ってゲノム配列にマッピング
[解決策] MeshTermの生物種などを用いて,Blastにかける時に配列情報以外も利用する
(2) 原因で考えられる事と解決策 その2
[原因] マッピングする対象がGenBankのみ
[解決策] マッピングする対象に,他のデータベースも加える.(PubMedの外部データベースリンクを利用できるかも.)
2. PubMed Centralにある論文のみ扱っている
PubMed Central 以外にも配列が抽出できそうな論文があれば,解析してリストに追加する.
上記の方法だと行き着くゴールがText2Genomeと全く同じ,という点が気になります.何かプラスアルファで追加できる事を考えながら進める必要がありそうです.
今後の目標
9月末頃から活動内容が変わっているので,今後行っていきたい事をまとめました.
目標
論文中に現れる核酸塩基配列(ATGCUなどの文字列)をゲノム配列にマッピングし,「ゲノム配列のこの部分配列に関する論文リスト」を作成する事を目標としています.最終的には,GBrowseなどでゲノム配列と論文リストのマッピングを可視化したいと考えています.
Finkのインストール(MacOS 10.6)
Snow LeopardでFinkをインストールしました.詳しい手順はFink - Source Release Downloadを参照してください.
1. ダウンロード
fink-0.29.10.tar.gzをダウンロード.保存場所は適当な場所でOKです.
$ tar -xvzf fink-0.29.10.tar.gz
$ cd fink-0.29.10
2. インストール
32bitと64bitがありますが32bit版を選択,インストール先は'/sw'としました.
エラーがです./usr/bin/pod2manに実行権限が無い事が原因のようなので,権限を変更しました.
$ ./bootstrap
(略)
pod2man --section=1 /sw/src/fink.build/dpkg-bootstrap-1.10.21-1218/dpkg-1.10.21/scripts/dpkg-architecture.pl > dpkg-architecture.1
/bin/sh: /usr/bin/pod2man: Permission denied
make[2]: *** [dpkg-architecture.1] Error 126
make[1]: *** [all-scripts] Error 2
make: *** [all-recursive] Error 2
### execution of make failed, exit code 2
phase compiling: dpkg-bootstrap-1.10.21-1218 failed
(略)
再実行.
$ ls -l /usr/bin/pod2man
-rw-rw-rw- 34 root wheel 807 6 24 2009 /usr/bin/pod2man
$ sudo chmod 755 /usr/bin/pod2man
$ ls -l /usr/bin/pod2man
-rwxr-xr-x 34 root wheel 807 6 24 2009 /usr/bin/pod2man
今度はうまく行きました.
$ ./bootstrap
Fink must be installed and run with superuser (root) privileges. Fink can automatically try to become root when it's run from a user account.
Since you're currently running this script as a normal user, the method you choose will also be used immediately for this script. Avaliable
methods:(1) Use sudo
(2) Use su
(3) None, fink must be run as rootChoose a method: [1]
Your hardware is a 64bit-compatible intel processor, so you have the option of running Fink in 64bit-only mode. This is not recommended for
most users, since many more packages are available for the default mode (which is mostly 32bit but includes some 64bit packages). Which mode
would you like to use?(1) Default (mostly 32bit)
(2) 64bit-onlyChoose a mode: [1]
(略)
Run '. /sw/bin/init.sh' to set up this terminal session environment to use Fink. To make the software installed by Fink available in all of
your future terminal shells, add '. /sw/bin/init.sh' to the init script '.profile' or '.bash_profile' in your home directory. The program
/sw/bin/pathsetup.sh can help with this. Enjoy.
3. セットアップ
一度ターミナルを終了してから,以下のコマンドを実行します.
$ /sw/bin/pathsetup.sh
無事インストールできました.
これまでの活動のまとめ(9月第1週の勤務)
これまで行ってきた事が乱雑になっていたので,結果をまとめてみる.
目的
次世代シークエンサ(データベースSRA)の論文とそのSRAの実験IDを対応づける事.ただ,SRAが出来る以前は次世代シークエンサの実験結果がGEOに登録されていたので,SRAとGEOの両方を抽出する.
今回行った事
これまで解析をした結果の中で,以下の3つの結果をまとめる.
1. illuminaとRoche (454)のpublication listにある論文リストに対して解析した結果
2. PMCに登録されている論文に対して,クエリを投げて取得した論文を解析した結果
3. PubMedのMeSHに検索を掛けた結果
1. illuminaとRoche (454)のpublication listからPubMedの論文リストを作成したもの
ファイル名:illumina -> pmid2sra.illumina.100810.tab, Roche(454) -> pmid2sra.roche.100810.tab.
ファイルの中は全部で6列.
1列目:PubMedのID
2列目:PMCのID
3列目:4列目のIDのデータベース名
4列目:PubMedのタグを見て取得した外部データベースのID
5列目:PMCの本文から抽出したSRAかGEOのID
6列目:GEOのIDをSRAに変換したID
結果を全部は載せられないので,一部抜粋.- は該当するものが無い事を示している.
18388141 - - - - -
18392026 - GEO GSE10825 - SRA001000
18392026 - GEO GSE10829 - SRA001000
18403677 - GEO GSE11019 - SRA001013
2. PMCに登録されている論文に対して,クエリを投げて取得した論文を解析した結果
ファイル名:pmc2sra.term.xxxxx.tab (xxxxx -> 投げたクエリ)
ファイルの中は全部で5列.
1列目:PMCのID
2列目:PubMedのID
3列目:PMCの本文から抽出したSRAかGEOのID
4列目:5列目のIDのデータベース名
5列目:PubMedのタグを見て取得した外部データベースのID
結果を一部抜粋.
2866332 20479877 SRA001156 - -
2613891 19055742 - GENBANK EU190438
2613891 19055742 - GENBANK EU190439
2613891 19055742 - GENBANK EU190440
2613891 19055742 - GENBANK EU721743
3. PubMedのMeSH Termに検索を掛けた結果
ファイル名:pmid2sra.mesh.xxxxx.tab (xxxxx -> クエリとして投げたMeSH Term)
1列目:PubMedのID
2列目:PMCのID
3列目:4列目のIDのデータベース名
4列目:PubMedのタグを見て取得した外部データベースのID
5列目:PMCの本文から抽出したSRAかGEOのID
6列目:GEOのIDをSRAに変換したID
結果を一部抜粋.
20507608 2889950 - - - -
20507562 2887456 - - - -
20506209 - - - - -
20505728 - GEO GSE20585 - -
20505179 - - - - -
20504933 Available_on_2/01/11 - - - -
結果を見ると,MeSHよりもPMCに対して単語を投げた方がSRAのIDが多く取れそう.ただし,投げたMeSH Termが良くなかったとか,複数のMeSH Termを同時に投げてみるなどの工夫をすると違うのかも.
次回
今回まとめられなかった,以下の二つをまとめる.
- ABI (SOLiD)のpublication list
- GEOやSRAに実験が登録された時の論文リストの結果