2011年8月27日土曜日

SIFT SNP機能予測アルゴリズム

今日もSNVの話です。
1塩基の変異が、タンパク質にどんな影響を与え得るのか、の予測アルゴリズムです。
今までPolyPhenとかGrantham Scoreとかについて少し触れましたが、今日はSIFTというアルゴリズム&ツールについて。

"SIFT" ってググると、上位には画像検出アルゴリズムがたくさん出てきますが、これは違うので必ず、"SIFT SNP" とかで検索して下さいね。 (画像検出の方も興味がありますが)
http://sift.jcvi.org/
SIFTとは、Sorting Intolerant From Tolerant の略です。
???
そもそもtolerant とは何でしょう?
辞書で引くと寛容な、とか耐性、とかがあります。 
ここではタンパク質の機能に変化が無い、ということを意味します。


SIFTの考え方の基本は、配列保存性です。
同じタンパクファミリーの中で、保存性の高いアミノ酸配列があったとします。 
そのような配列の中のアミノ酸変異・置換は、タンパク質の機能に致命的な影響を与える可能性が高いと思います。 
機能を失ったタンパク質は、進化の過程で生き残れませんね。

反対に、タンパク質機能に重要な影響を与えない部分のアミノ酸ならば、進化の途中でどんどん置換が起こり得るだろうし、またそのような機能に影響の無い場所のアミノ酸置換は、生き残っているタンパク質にも見られるはずでしょう。

つまり、配列の保存性が高い場所のアミノ酸置換は、タンパク質機能の変化という点でIntolerant(影響あり)。
配列保存性の低い場所のアミノ酸置換は、タンパク質機能変化にTolerant(影響なし)。

この方法は、正しいタンパク質ファミリー(オーソログタンパク)を集めてアライメントすることが重要です。その中で配列保存性を見ていくからです。 
UniprotやNCBIのnrなどから配列データを借りています。

さて、このように配列相同性のみを使用した予測ツールでは、タンパク質の立体構造までは見ていません。 
ループ構造部分に変異があるのか、疎水性が失われるのか、といった情報までは見ていないのです。
これらは別の予測ツール(Polyphenなど)が必要です。

NGSでSNVを見つけた。
Non-synonymousのSNVを絞り出した。
次に考えるのは、そのnsSNVの重要性です。
そのアミノ酸が変わったらタンパク質として生き残れないよ、という情報は、重要性の指標になります。
そのアミノ酸が変わっても、タンパク質は生き残っていたのなら、その置換はさほど重要ではないでしょう。
最初にSIFTなどで、配列保存性を基準にnsSNVの重要性をフィルターにかけ、残った重要そうなやつを、次にタンパク質立体構造上で確認していく方が近道のような気がします。

さて、実際にNGSでSNVを見つけてからこのツールを使って解析するにはどうしたら良いか?
先にURLを示した場所よりも、以下から入る方がお勧めです。
VCFフォーマットをSIFT専用のフォーマットにコンバートしてくれるからです。

http://sift.bii.a-star.edu.sg/www/SIFT_intersect_coding_submit.html
ここで、SAMtoolsなどで求めたVCFファイルをアップします。
そうするとしばらくして、コンバートされたファイルができますので、これをPCに保存します。
SNP用のファイルと、InDel用のファイルの2種類できます。
ここではSNP用ファイルを例に、落とします。
保存したら、upload here のリンクをクリックして、そのファイルをアップロードします。
その時、自分のE-mail アドレスと、オプションでどんなアノテーションを付けたいかを指定します。
結果は、HTML、またはテキストで参照できます。
これがSNPの結果
リンクできるところはそれぞれのDBにリンクしています。
HTMLだと、ちょっと扱いにくいので、私はテキスト(tsv)で落として、Excelで見ることもお勧めします。
例えば、こんな風に絞り込めば、新規っぽいSNPの機能を予測できます。

この絞り込みの条件は、
  1. dbSNPに登録の無い "novel" SNPで
  2. アミノ酸置換をもたらす Non-synonymous SNP
です。 ここで、SNP-Typeの右の、Predictionカラムでソートして、DAMAGING(=Intolerant)を選ぶのです。
その時、ScoreとMedian Infoにも注目します。
Scoreは0から1の値を取り、0.05以下のとき、タンパク質機能に影響あり(=Intolerant = Damaging)とされます。
Median Infoは保存性の信頼度で、0から4.32の値をとり、大きいほど信頼度が低くなります。 3.25以上のときはLow confidenceとして警告が出ます。

どうでしょう? SNPの機能を調べるにはとても使いやすいツールだと思います。


 もっと詳しく知りたい方は、

 http://sift.jcvi.org/www/SIFT_help.html

Kumar P et al. Predicting the effects of coding non-synonymous variants on protein function using the SIFT algorithm. Nature Protocols 4, 1073-82 (2009).

2011年8月20日土曜日

Ensembl - Variant Effect Predictor でSNPアノテーション

先日、VCFフォーマットを読みこんでSNPのアノテーションを付けるツールとして、SeattleSeq Annotationを紹介しました。ここ

ちょっと調べると、ほかにもいろいろありますね。
今日は定番?のEnsembl です。
その中の、Variant Effect Predictor というウェブツールです。


Species は、ここではヒト。 ゲノムバージョンと一緒に選びます。
ファイルの場所を指定して、フォーマット(VCF)を選びます。 
もう気づいたかもしれませんが、私はVCFを読みこめるツールが好きです。
VCFは変異レポートファイルのデファクトスタンダード。
書き込める自由度も高く、ほぼ満足です。
VCF自体を人間が読むことはあまり無いでしょうが。


追加するアノテーションを選びます。
ここからはヒトのデータのみです。

Non-Synonymous SNP(アミノ酸コーディング領域で起こる一塩基変異で、コードされるアミノ酸を置換するもの)について、その影響を予測するために、SIFT、PolyPhen、の2種類のスコアをアノテーションします。

その下のフィルタリングオプションは、マイナー・アレル・フリークエンシー(MAF)で、データをカットできます。
Nextを押して実行すると、検索が始まります。
こんな画面がでたら終了。
HTMLを「別のタブまたは別画面」で開いてみましょう。 そのまま開くと前に戻れないので注意!

HTMLのレポート画面です。 
Ensembl-IDとか、SNVの遺伝子上の場所、変異のアノテーション、アミノ酸変異があるものはその機能への影響度合い、などがリストで表示されます。


すぐ上のスクリーンショットには、Coding領域にあるNon-Synonymous SNVがありますね。
SIFTとPolyPhenの値も右にあります。
SIFT=tolerated(0.07); PolyPhen=benign(0.16) 
このうちPolyPhenの値とDescriptionについては以前SeattleSeqのところでちょっと書きましたね。
SIFTについてはまた次回。

さて、HTMLのほかに、テキストでダウンロードもできます。
これは後で編集するのに便利でしょう。

もうひとつは、
Ensemblのゲノムビューワーへのリンク。私は使ったことはことがないですが。 こんな感じでSNVの位置がわかります。



このEnsembl Variant Effect Predictorですが、残念ながらウェブ上で行うにはデータ量MAX780変異と、制限があるそうです。
それ以上の変異を解析するには、Perl APIという手があります。



2011年8月18日木曜日

IGVがVCFフォーマットに対応!

うちのベランダでは、今年流行りの緑のカーテンを、ゴーヤとアサガオでやっています。
アサガオは去年の分子生物学会で、九州大学の方から分けてもらったいろんな原種を種から育てました。 白のアサガオがきれいです。

緑のカーテンはそれなりにいいんですが、うちのすぐ前には適当に木が生い茂る公園があるんですね。
そこから飛んできたセミが、うちの緑のカーテンに止まって、夜な夜な鳴き続けるんです。
深夜2時くらいまで鳴いています。
静寂をくれ~!

さて、IGV (Integrative Genomics Viewer http://www.broadinstitute.org/igv/ )のサイトを久しぶりに見てみたら、バージョンアップしていました。
Version2のベータだったのが、いつの間にかVersion2.0.4に!
こまめにチェックしなくてはいけませんね。

追加機能として個人的に良かったのは、VCF4フォーマットが取り込めること。
これでNGSデータからSamtoolsなどで検出してきた複数サンプルのSNPデータを、そのまま並べて表示できます。
ちゃんとソートしてから作ったVCFフォーマットを用意し、IGV toolsで、インデックスを付けるのを忘れずに。

こんな感じ。

2011年8月12日金曜日

制御領域はSNP検出に不向き?

遺伝子発現のオン・オフに重要な働きをする、CpG island と その多くが存在する5'-UTR
この部分はゲノムの他の部分よりGCコンテンツが高いことが知られています。
制御領域を次世代のシーケンサーで読んで、その変異を調べようという研究がありますが、それは注意が必要だ、というレポートを見つけました。

その名も、「Next generation sequencing has lower sequence coverage and poorer SNP-detection capability in the regulatory regions」 

このレポートでは、Cancer Genome AtlasからIlluminaとSOLiDのデータをダウンロードして、まずマッピングをたくさんのツールで行って比較しています。

比較しているのは、マッピングツールは
  • Bowtie
  • BWA
  • SOAP2
  • RMAP
  • ZOOM
  • Maq
  • Novoalign
  • SHRiMP
 SNP検出には
  • MAQ
  • SOAPsnp
  • SNVmix
です。
マッピングツールのサマリーは、サプリメント資料に詳しくあります。
Smith-Waterman alignment系、Burrows-Wheeler transform系、Hash Table系、とそれぞれ。

マッピングプログラムの比較をまとめた論文は良く見かけるのですが、このレポートでは単にどれが速い・低メモリー・高カバレージだ、というのにとどまらず、タイトルにもありますが、

GC%が高い制御領域は、ゲノムの他の領域と比べてマッピングカバレージが極端に低い
よってCpG island などの制御領域でSNPを見つけたいときは気をつけよ!

と言っています。

私も今まで、カバレージと言っても、ゲノム平均カバレージ、あるいは遺伝子平均カバレージにのみ注意が行って、遺伝子の中の5'-UTR, Exon, Intron, 3'-UTR と分けて考えたことは無かったのでなるほどと思いました。

ちなみにこのレポートでは、
  • BWT系のマッパー(Bowtie, BWA)がイルミナデータのマッピングには、ペアエンド、シングルリードのどちらでも最も成績が良かった。
  • SOLiDデータのマッピングには、NovoalignCSが最も良かった。
  • SNP検出はMAQが一番良かった。
と結論つけています。 ここは異論がある方もいるでしょうが。
ただ、なんとなくですが、無難な結論ではあります。

2011年8月5日金曜日

SRA-toolkit v.2.1.2

前にも書きましたが、NCBIのSRA(sequence read archive)に、sra-toolkit というツールがあります。
これは、SRAや、EBI、DDBJの配列データベースから、リードファイルを落としてきたときの、.sra または.lite.sra フォーマットファイルを解凍するのに使います。

SRA-toolkitの詳細はこちらにあります。
http://www.ncbi.nlm.nih.gov/books/NBK47540

最近バージョンが上がったので、メモを兼ねて、再度書きます。


ダウンロードはここ http://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?cmd=show&f=software&m=software&s=software

LinuxでもWindowsでもMacでも動作します。

ここからがメモ書き
共通するのは、-A オプションで解凍後のファイル名を決めること でしょうか。

lite.sra からfastq への変換コマンド: fastq-dump
使用例1:デフォルト
fastq-dump -A SRR233129 SRR233129.lite.sra
出力結果:
SRR233129.fastq ペアエンドが一本になって出力される!

使用例2:--split-files オプションを入れてRとFに分けて解凍したほうが後でソフトに入れるときに都合が良いと思う
fastq-dump -A SRR233129 --spilt-files SRR233129.lite.sra
出力結果:
SRR233129_1.fastq; ペアエンドのR
SRR233129_2.fastq; AATGTTCT バーコードのみ
SRR233129_3.fastq; ペアエンドのF

使用例3:タグのあるリードを、タグ無しのリードと分ける
fastq-dump -G -A SRR233129 SRR233129.lite.sra
出力結果:
SRR233129_tagged_78_AATGTTCT.fastq
SRR233129.fastq


Illuminaファイルへの変換: illumina-dump
使用例1:
illumina-dump -A SRR233129 SRR233129.lite.sra
出力結果:
SRR233129_4_1101_seq.txt
SRR233129_4_1101_qcal.txt
............................
SRR233129_4_2208_seq.txt
SRR233129_4_2208_qcal.txt

使用例2:qseqファイルへの変換 「-x」
illumina-dump -x -A SRR233129 SRR233129.lite.sra
出力結果:
SRR233129_4_1101_1_qseq.txt
.............................
SRR233129_4_2208_3_qseq.txt


SOLiD dataを .csfasta / .qual に変換する: abi-dump
使用例:
abi-dump -A SRR019622 SRR019622.lite.sra
出力結果:
SRR019622_F3.csfasta
SRR019622_F3_QV.qual


以上が、私が思うに、後のデータ解析に使うのに、必要最低限のコマンド+オプションの組み合わせです。