ゲノム情報解析基礎(2011年04月28日)門田幸二

バイオインフォマティクス系学会
バイオインフォマティクス系研究所
バイオインフォマティクス系メーリングリスト
バイオインフォマティクス系?!よろず相談所
次世代シーケンサー解析系
日本語コンテンツの有用サイト
ライフサイエンス統合データベースプロジェクト
  1. 生命科学系 データベース(DB)カタログ
    そのまんまです。Nucleic Acids Research (NAR)というジャーナルでデータベース特集号というのが毎年初めに出ているようですが、そのカテゴリに沿った分類もあります。もちろん日本語による簡単な説明文章つき。
  2. WINGpro (収録DBの全ての一覧表)
    様々なデータベースをアルファベット順で一覧できます。簡単な特徴についても述べられていて大変便利。
    ”WINGproの使い方”の番組も見られます。
  3. 統合TV
    有用なデータベースやウェブツールの活用法を動画で紹介してくれます。EMBOSSBioMartなど「単語は聞いたことあり有用そうなんだけどそもそもどうやって利用するのかよくわからない...」的なものの利用法をを具体例を交えて紹介してくれるので必見です。
  4. ゲノム解析ツールリンク集
    カテゴリ別に分類されています。もちろん日本語による簡単な要約文章つき。
様々なperlプログラムの雛型
  1. blast結果の整形あれこれ
    以下のファイルおよびコマンドの実行によって得られたblast結果ファイルを整形したい!
    --------------------------------------------------------------
    データベース:カイコゲノムプロジェクトで得られたカイコゲノム配列(染色体28本)をmulti-fasta形式でまとめたもの(integretedseq.txt.gzを解凍したもの)
    問い合わせ配列:ランダムにとってきたカイコのEST配列(10配列;est_seq.txt
    コマンド1:formatdb -i integretedseq.txt -p F -o T
    コマンド2:blastall -p blastn -d integretedseq.txt -i est_seq.txt -e 1e-10 > result_blast.txt
    --------------------------------------------------------------

    プログラムgenome01_1.pl
    説明:問い合わせ配列ごとに、染色体何本にヒットしたかをカウントし、ヒットした染色体の列にそのスコアを出力
    入力ファイル:任意のblast結果ファイル(result_blast.txt
    コマンド:perl genome01_1.pl result_blast.txt > result_genome01_1.txt

    プログラムgenome01_2.pl
    説明:問い合わせ配列ごとに、染色体何本にヒットしたかをカウントし、ヒットした染色体の列にそのE-valueを出力
    入力ファイル:任意のblast結果ファイル(result_blast.txt
    コマンド:perl genome01_2.pl result_blast.txt > result_genome01_2.txt

    プログラムgenome01_3.pl
    説明:問い合わせ配列ごとに、染色体何本にヒットしたかをカウントし、ヒットした染色体の列には1を、そうでなければ0を出力
    入力ファイル:任意のblast結果ファイル(result_blast.txt
    コマンド:perl genome01_3.pl result_blast.txt > result_genome01_3.txt

    プログラムgenome01_4.pl
    説明:問い合わせ配列ごとに、ヒットした染色体、スコア、E-valueを出力
    入力ファイル:任意のblast結果ファイル(result_blast.txt
    コマンド:perl genome01_4.pl result_blast.txt > result_genome01_4.txt

  2. ハッシュ利用例
    遺伝子ごとにそのdescriptionや局在(subcellular_location)などのアノテーション情報を満載したタブ切りテキストファイル(annotation.txt)が手元にあるとする。 (この例では11遺伝子の仮想情報データであるが、数万〜数十万行からなるファイルの場合を想定してください)。この中から、genelist*.txtで示した遺伝子に対応するアノテーション情報を様々な形で抽出したい。

    プログラムgenome02_1.pl
    説明:(1番目の引数で与えた)annotation.txt中の第1列目をキーとして、(2番目の引数で与えた)genelist1.txt中のものが含まれる行全体を出力
    入力ファイル1:アノテーションファイル(annotation.txt
    入力ファイル2:リストファイル(genelist1.txt
    コマンド:perl genome02_1.pl annotation.txt genelist1.txt > result_genome02_1.txt
    挙動:genelist1.txt中のものはすべてannotation.txt中の第1列目に含まれているので何の問題もない。利用例:発現変動遺伝子リストのみのアノテーション情報入手など

    プログラムgenome02_1.pl(上と同じ)
    説明:(1番目の引数で与えた)annotation.txt中の第1列目をキーとして、(2番目の引数で与えた)genelist2.txt中のものが含まれる行全体を出力
    入力ファイル1:アノテーションファイル(annotation.txt
    入力ファイル2:リストファイル(genelist2.txt
    コマンド:perl genome02_1.pl annotation.txt genelist2.txt > hoge.txt
    挙動:genelist2.txt中の最終行のものはannotation.txt中の第1列目には含まれていないので出力されない

    プログラムgenome02_2.pl
    説明:(1番目の引数で与えた)annotation.txt中の第3列目をキーとして、(2番目の引数で与えた)genelist2.txt中のものが含まれる行全体を出力
    入力ファイル1:アノテーションファイル(annotation.txt
    入力ファイル2:リストファイル(genelist2.txt
    コマンド:perl genome02_2.pl annotation.txt genelist2.txt > result_genome02_2.txt
    挙動:genelist2.txt中の最終行のもの以外はannotation.txt中の第3列目には含まれていないので出力されない

    プログラムgrep.pl(これはハッシュプログラムではありませんが。。。)
    説明:(1番目の引数で与えた)annotation.txt中の文字列に対して、(2番目の引数で与えた)genelist1.txt中のものが含まれる行全体を出力
    入力ファイル1:アノテーションファイル(annotation.txt
    入力ファイル2:リストファイル(genelist1.txt
    コマンド:perl grep.pl annotation.txt genelist1.txt > grep.txt
    挙動:ただのキーワード検索だと想定外のものが多く含まれることがわかる

    プログラムgenome02_3.pl
    説明:(1番目の引数で与えた)annotation.txt中の第1列目をキーとして、(2番目の引数で与えた)genelist1.txt中のものに対応するannotation.txt中の第4列目(subcellular_location列)のみを出力
    入力ファイル1:アノテーションファイル(annotation.txt
    入力ファイル2:リストファイル(genelist1.txt
    コマンド:perl genome02_3.pl annotation.txt genelist1.txt > result_genome02_3.txt
    挙動:genelist1.txt中の遺伝子のsubcellular_locationのみを出力してくれる。利用例:アミノ酸残基の1文字⇔3文字表記の変換など。