50
Copyright © Amelieff Corporation All Rights Reserved. ゲノムReseq、変異解析 V1

ゲノムRe s e q 、変異解析kadota/bioinfo_ngs_sokushu_2015/...2015/08/04  · Illumina CASAVA filter [Y] を除去 クオリティ20未満の末端をトリム 片側のみのリードを除外

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • Copyright © Amelieff Corporation All Rights Reserved.

    ゲ ノ ム R e s e q 、 変 異 解 析

    V1

  • Copyright © Amelieff Corporation All Rights Reserved. 2

    本 講 義 に あ た っ て

    • 代表的な解析の流れを紹介します

    – 論文でよく使用されているツールを使用します

    • コマンドを沢山実行します

    – スペルミスが心配な方は、コマンド例がありますのでコピーして実行してください

    • マークのコマンドは実行してください。

    – 実行が遅れてもあせらずに、応用や課題の間に追い付いてください

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 3

    本 講 義 の 内 容

    • Reseq解析

    公開データ取得

    クオリティコントロール

    マッピング

    変異検出

    • RNA-seq解析

    公開データ取得

    クオリティコントロール

    マッピング

    発現定量

    SNVとIndel検出

    を行います。 FPKMを算出します。

    ↓ ↓ ↓

    ↓ ↓ ↓

  • Copyright © Amelieff Corporation All Rights Reserved. 4

    R e s e q 解 析 : 検 出 可 能 な 変 異

    • ショートリードのシーケンスでも様々な変異を検出可能

    SNV InDel Inversion

    Duplication Translocation CNV

    • 検出アルゴリズムとソフトウェア

    Paired-end mapping : BreakDancer、VariationHunter

    Split-read mapping : Pindel

    Others、Complex : CREST、DELLY

    充分に精度が高いとは言えません。

  • Copyright © Amelieff Corporation All Rights Reserved. 5

    R e s e q 解 析 : パ イ プ ラ イ ン

    データ取得 → クオリティコントロール → マッピング→変異検出

    解析パイプラインとは 「あるソフトの出力結果が、次のソフトの入力ファイルとなる」連続した解析処理の流れ。

  • Copyright © Amelieff Corporation All Rights Reserved. 6

    R e s e q 解 析 : パ イ プ ラ イ ン

    サンプル間比較、遺伝モデルを使用した絞り込み Genotype imputation など様々。

    今日は一部のコマンドを実行します。

    データ取得 → クオリティコントロール → マッピング→変異検出

  • Copyright © Amelieff Corporation All Rights Reserved. 7

    R e s e q 解 析 : デ ー タ

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンス取得 – http://support.illumina.com/sequencing/sequencing_software/igenome.html

    リファレンスのfastaのみではなく、 マッピングソフトのインデックスファイルや遺伝子情報ファイルも 一緒に圧縮されて公開しています。

  • Copyright © Amelieff Corporation All Rights Reserved. 8

    R e s e q 解 析 : デ ー タ

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンス取得(実行済み)

    $ wget ftp://igenome:G3nom3s4u@ussd-

    ftp.illumina.com/Saccharomyces_cerevisiae/NCBI/build3.1/Saccharom

    yces_cerevisiae_NCBI_build3.1.tar.gz

    $ tar zxvf Saccharomyces_cerevisiae_NCBI_build3.1.tar.gz

    ※お手元のテストデータでは、使用しないデータを一部削除しています

    ダウンロードして、解凍します。

  • Copyright © Amelieff Corporation All Rights Reserved. 9

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンスを確認

    R e s e q 解 析 : デ ー タ

    $ cd /home/ユーザ名/Desktop/amelieff/Scerevisiae $ ll

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 10

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンスを確認

    R e s e q 解 析 : デ ー タ

    $ ll WholeGenomeFasta

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 11

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンスを確認

    R e s e q 解 析 : デ ー タ

    $ less WholeGenomeFasta/genome.fa

    「q」で閲覧を終了します。

    ヘッダには、コンティグ名が記載されます。

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 12

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンスを確認

    R e s e q 解 析 : デ ー タ

    $ less WholeGenomeFasta/genome.fa.fai

    1列目: コンティグ名(fastaファイルのヘッダ) 2列目: コンティグの長さ 3列目: ファイルの先頭から見た、染色体の第一塩基目の位置 4列名: fastaの1行の文字数 5列目: 各行のバイト数

    インデックスファイルを開きます。SamToolsで作成できます。

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 13

    応 用 ) ヒ ト リ フ ァ レ ン ス の 話

    GRCh Build37 + デコイ配列 Version 5

    ヒトWhole Genome Sequencing Cloneを「ヒトゲノム+ヒトヘルペスウイルスHHV-4 」にマッピングして、よくマップできなかったものを集めたもの。 サイズ: 合計35.4Mb、N50=22.9kb 特徴 : 50%はサテライト配列またはシンプルリピート、 20%はレトロトランスポゾン

    ※現在は、2013/12/24にメジャーアップしたGRCh38が公開されています。

  • Copyright © Amelieff Corporation All Rights Reserved. 14

    With Decoy

    Without Decoy

    最大カバレージ: 1112

    最大カバレージ: 817

    応 用 ) ヒ ト リ フ ァ レ ン ス の 話

    GRCh Build37 + デコイ配列 Version 5

    Reseq解析は、リファレンスに対して変異検出するので、リファレンス自体がどの程度確かなのかが非常に大切

  • Copyright © Amelieff Corporation All Rights Reserved. 15

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 酵母のゲノムのリファレンスを確認

    R e s e q 解 析 : デ ー タ

    $ ll Scerevisiae/BWAIndex/ BWAのインデックス ファイルを開きます

    TRY!

    リンクの「l」 シンボリックリンク名 -> 実体のファイル

  • Copyright © Amelieff Corporation All Rights Reserved. 16

    データ取得 → クオリティコントロール → マッピング→変異検出

    • リファレンスのインデックスを作成

    R e s e q 解 析 : デ ー タ

    $ bwa index

    $ mkdir BWAIndex/version0.7.12

    $ cd BWAIndex/version0.7.12

    BWA バージョン0.7のインデックスファイルを作成します。 BWAの使い方を確認します。

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 17

    データ取得 → クオリティコントロール → マッピング→変異検出

    R e s e q 解 析 : デ ー タ

    • リファレンスのインデックスを作成

    $ ln -s ../../WholeGenomeFasta/genome.fa

    $ ll

    シンボリックリンクを作成します。

    $ ln –s 実体のファイル

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 18

    データ取得 → クオリティコントロール → マッピング→変異検出

    R e s e q 解 析 : デ ー タ

    • リファレンスのインデックスを作成

    $ bwa index genome.fa

    $ ll

    インデックスを作成します。

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 19

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータ取得

    R e s e q 解 析 : デ ー タ

    DDBJのSequence Read Archive → Search

    http://trace.ddbj.nig.ac.jp/dra/index.html

  • Copyright © Amelieff Corporation All Rights Reserved. 20

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータ取得

    R e s e q 解 析 : デ ー タ

    Accessionに「ERR038793」と入力 → Search

  • Copyright © Amelieff Corporation All Rights Reserved. 21

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータ取得

    R e s e q 解 析 : デ ー タ

    NavigationエリアのExperiment → 「ERX015989」をクリック

    実験の詳細

    ここからダウンロード

  • Copyright © Amelieff Corporation All Rights Reserved. 22

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータ取得

    R e s e q 解 析 : デ ー タ

    Whole Genome Sequencing

    他にも、シーケンサのプラットフォームやリード長などの情報も記載されています。

  • Copyright © Amelieff Corporation All Rights Reserved. 23

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータ取得(実行済み)

    R e s e q 解 析 : デ ー タ

    $ wget

    ftp://ftp.ddbj.nig.ac.jp/ddbj_database/dra/fastq/ERA038/ERA038218

    /ERX015989/ERR038793_1.fastq.bz2

    $ wget

    ftp://ftp.ddbj.nig.ac.jp/ddbj_database/dra/fastq/ERA038/ERA038218

    /ERX015989/ERR038793_2.fastq.bz2

    ダウンロードします。

  • Copyright © Amelieff Corporation All Rights Reserved. 24

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータ取得(実行済み)

    R e s e q 解 析 : デ ー タ

    $ bunzip2 ERR038793_1.fastq.bz2

    $ bunzip2 ERR038793_2.fastq.bz2

    $ head -4000 ERR038793_1.fastq > 1K_ERR038793_1.fastq

    $ head -4000 ERR038793_2.fastq > 1K_ERR038793_2.fastq

    解凍して、先頭1000リードを抽出します。

  • Copyright © Amelieff Corporation All Rights Reserved. 25

    データ取得 → クオリティコントロール → マッピング→変異検出

    • シーケンスデータを確認

    R e s e q 解 析 : デ ー タ

    $ cd /home/ユーザ名/Desktop/amelieff/ $ ll

    :

    $ wc -l 1K_ERR038793_1.fastq

    4000 1K_ERR038793_1.fastq

    行数を数えます。 1リードは4行で表記されます。

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 26

    データ取得 → クオリティコントロール → マッピング→変異検出

    $ fastqc -help

    R e s e q 解 析 : ク オ リ テ ィ コ ン ト ロ ー ル

    $ fastqc -version

    • シーケンスデータのクオリティを確認

    FastQC v0.10.1

    インストールされているFastQCの、バージョンと使い方を確認します。

    Fastqのみではなく、bamとsamも入力可能

    複数のファイルも指定可能

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 27

    データ取得 → クオリティコントロール → マッピング→変異検出

    $ mkdir reseq

    $ fastqc -o reseq -f fastq 1K_ERR038793_1.fastq 1K_ERR038793_2.fastq

    R e s e q 解 析 : ク オ リ テ ィ コ ン ト ロ ー ル

    • シーケンスデータのクオリティを確認

    FastQCを実行します。

    TRY!

    $ firefox reseq/1K_ERR038793_1_fastqc/fastqc_report.html

    $ firefox reseq/1K_ERR038793_2_fastqc/fastqc_report.html

    fastqc_report.htmlを、ウェブブラウザで開きます。

  • Copyright © Amelieff Corporation All Rights Reserved. 28

    応 用 ) と あ る シ ー ケ ン ス デ ー タ の 実 例

    リード末端でクオリティが低下

    最初の1塩基の割合が不自然

    シーケンス技術が向上しクオリティの高いデータを目にする機会が 増えましたが、試料・シーケンス・トリミングなどに、

    問題がないか確認することをおすすめします。

    マッピング率が低下や、変異の偽陽性が増加するなどの問題を引き起こす。

  • Copyright © Amelieff Corporation All Rights Reserved. 29

    データ取得 → クオリティコントロール → マッピング→変異検出

    • クオリティ30以上の塩基が90%未満のリードを削除

    R e s e q 解 析 : ク オ リ テ ィ コ ン ト ロ ー ル

    TRY!

    $ fastq_quality_filter -h

    インストールされているfastq_quality_filterの使い方を確認します。

  • Copyright © Amelieff Corporation All Rights Reserved. 30

    データ取得 → クオリティコントロール → マッピング→変異検出

    • クオリティ30以上の塩基が90%未満のリードを削除

    $ fastq_quality_filter -i 1K_ERR038793_1.fastq

    -o reseq/1K_ERR038793_1_qual.fastq -q 30 -p 90 -Q 33 -v

    R e s e q 解 析 : ク オ リ テ ィ コ ン ト ロ ー ル

    TRY!

    Quality cut-off: 30

    Minimum percentage: 90

    Input: 1000 reads.

    Output: 802 reads.

    discarded 198 (19%) low-quality reads.

    ターミナルに直接解析のサマリーを出力するソフトもあります。

    以降の解析は、片側のリードのみ使用します。

  • Copyright © Amelieff Corporation All Rights Reserved. 31

    データクオリティチェック(FastQC)

    クオリティ20未満が80%以上のリードを除去

    データクオリティチェック(FastQC)

    Illumina CASAVA filter [Y] を除去

    クオリティ20未満の末端をトリム

    片側のみのリードを除外

    配列長が短いリード除去

    未知の塩基(N)が多いリード除去

    FASTQ形式にマッチするかチェック

    応 用 ) ク オ リ テ ィ コ ン ト ロ ー ル の 順 番 も 大 切

    ロングリードの場合、 リードの大半が除外されてしまう可能性。

    ペアエンドリードの場合、ペアが揃っていないと マッピングソフトが停止する可能性。

  • Copyright © Amelieff Corporation All Rights Reserved. 32

    データ取得 → クオリティコントロール → マッピング→変異検出

    • Bwa memコマンドの使い方を確認

    $ bwa mem

    ※RG(read groups) platform (PL) および sample (SM)が必要 PLの例:454, LS454, Illumina, Solid, ABI_Solid

    R e s e q 解 析 : マ ッ ピ ン グ

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 33

    データ取得 → クオリティコントロール → マッピング→変異検出

    • マッピング

    $ cd reseq

    $ bwa mem -R "@RG¥tID:1K_ERR038793_1¥tSM:ERR038793¥tPL:Illumina"

    /home/ユーザ名/Desktop/amelieff/Scerevisiae/BWAIndex/genome.fa 1K_ERR038793_1_qual.fastq > 1K_ERR038793_1_qual.sam $ ll

    R e s e q 解 析 : マ ッ ピ ン グ

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 34

    データ取得 → クオリティコントロール → マッピング→変異検出

    • SAMをBAMに変換

    $ samtools view -Sb 1K_ERR038793_1_qual.sam > 1K_ERR038793_1_qual.bam

    $ ll -h

    R e s e q 解 析 : マ ッ ピ ン グ

    1/4程度にファイルサイズが小さくなりました。

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 35

    データ取得 → クオリティコントロール → マッピング→変異検出

    • ソートとインデキシング

    $ samtools sort 1K_ERR038793_1_qual.bam 1K_ERR038793_1_qual_sorted

    $ samtools index 1K_ERR038793_1_qual_sorted.bam

    $ ll

    R e s e q 解 析 : マ ッ ピ ン グ

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 36

    データ取得 → クオリティコントロール → マッピング→変異検出

    • マッピングされたリード数

    $ samtools idxstats 1K_ERR038793_1_qual_sorted.bam

    R e s e q 解 析 : マ ッ ピ ン グ

    TRY!

    コンティグ名、コンティグの長さ、マッピングされたリード、マッピングされなかったリードの順に表示されます。

    3列目を足し合わせると、マッピングされたリード数がわかります。

  • Copyright © Amelieff Corporation All Rights Reserved. 37

    応 用 ) 列 の 合 計 を 計 算 す る コ マ ン ド

    $ samtools idxstats 1K_ERR038793_1_qual_sorted.bam > tmp

    $ awk '{a += $3} END {print a}' tmp

    803 マッピングされたリード

    $ awk '{a += $4} END {print a}' tmp

    0 マッピングされなかったリード

    1行読み込むたびに、3列目を「a」に足す。

    802リードのfastqをマッピングしたはずが、1本増えています。 マルチヒットしたリードがあると考えられます。

  • Copyright © Amelieff Corporation All Rights Reserved. 38

    データ取得 → クオリティコントロール → マッピング→変異検出

    • GATK UnifiedGenotyperコマンドの使い方を確認

    $ java -jar /usr/local/src/GenomeAnalysisTK-1.6-13-

    g91f02df/GenomeAnalysisTK.jar -T UnifiedGenotyper -h

    データ取得 → クオリティコントロール → マッピング→変異検出

    R e s e q 解 析 : 変 異 検 出

    TRY!

    SNP, INDEL, BOTH から選べます。デフォルトはSNP

  • Copyright © Amelieff Corporation All Rights Reserved. 39

    データ取得 → クオリティコントロール → マッピング→変異検出

    • SNV/Indel検出

    $ java -jar /usr/local/src/GenomeAnalysisTK-1.6-13-g91f02df/GenomeAnalysisTK.jar

    -T UnifiedGenotyper -glm BOTH

    -R /home/ユーザ名/Desktop/amelieff/Scerevisiae/WholeGenomeFasta/genome.fa -I 1K_ERR038793_1_qual_sorted.bam -o 1K_ERR038793_1_qual_sorted.vcf

    $ ll

    データ取得 → クオリティコントロール → マッピング→変異検出

    R e s e q 解 析 : 変 異 検 出

    TRY!

  • Copyright © Amelieff Corporation All Rights Reserved. 40

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 検出したSNV/Indelを可視化

    データ取得 → クオリティコントロール → マッピング→変異検出

    R e s e q 解 析 : 変 異 検 出

    TRY!

    ジェノタイプがC/Tのヘテロ カバレージが6

    $ less 1K_ERR038793_1_qual_sorted.vcf

  • Copyright © Amelieff Corporation All Rights Reserved. 41

    データ取得 → クオリティコントロール → マッピング→変異検出

    • 検出したSNV/Indelの数を確認

    $ awk '!/^#/' 1K_ERR038793_1_qual_sorted.vcf | wc -l

    データ取得 → クオリティコントロール → マッピング→変異検出

    R e s e q 解 析 : 変 異 検 出

    TRY!

    100

    100個の変異が検出されました

    検出されるSNV/Indel数は、使用するソフトウェアのバージョンやパラメータにより変動します

  • Copyright © Amelieff Corporation All Rights Reserved. 42

    応 用 ) リ ア ラ イ メ ン ト

    リアライメントは必要?

    BWAでは、 1本のリードに複数の変異が含まれる場合に、アライメントスコアの計算上、SNVやIndelの正確な位置を決めることが出来ません。 このような領域を対象領域として抜き出して、改めて丁寧にアライメントを行う。

    $ igv.sh

  • Copyright © Amelieff Corporation All Rights Reserved. 43

    TRY! Genomes → Load Genome from File…

    Genome.faファイルを選択

    /home/ユーザ名/Desktop/amelieff/Scerevisiae/Wh

    oleGenomeFasta/genome.faまで移動

  • Copyright © Amelieff Corporation All Rights Reserved. 44

    TRY! File → Load from File…

    /home/ユーザ名/Desktop/amelieff/reseqまで移動

  • Copyright © Amelieff Corporation All Rights Reserved. 45

    TRY! 「I:111」と入力

    ジェノタイプがC/Tのヘテロ

    カバレージが6

  • Copyright © Amelieff Corporation All Rights Reserved. 46

    応 用 ) I n d e l の 見 方

    TTの欠失 TTTの欠失

    ジェノタイプは、AT/A

    ホモポリマーではシーケンスエラーによって、偽陽性のIndelが検出されやすい。

  • Copyright © Amelieff Corporation All Rights Reserved. 47

    応 用 ) 変 異 の フ ィ ル タ リ ン グ

    $ java -jar /usr/local/src/GenomeAnalysisTK-1.6-13-g91f02df/GenomeAnalysisTK.jar

    -T VariantFiltration

    –R /home/ユーザ名/Desktop/amelieff/Scerevisiae/WholeGenomeFasta/genome.fa -V 1K_ERR038793_1_qual_sorted.vcf -o 1K_ERR038793_1_qual_sorted_fil.vcf

    --clusterWindowSize 10 --filterExpression "DP < 10" --filterName "LowCoverage"

    • GATKのVariantFiltrationコマンドでフィルタリングをします

    VCFファイルのFILTER列に、条件を通過した場合“PASS”、そうでない場合は “filterName”が記入されます。

  • Copyright © Amelieff Corporation All Rights Reserved. 48

    応 用 ) 遺 伝 子 情 報 の ア ノ テ ー シ ョ ン

    • snpEff…変異に対して遺伝子名や転写産物の情報、変異の影響などを付与します

    snpEffを実行するには、snpEffをインストールした後、対応するゲノムのデータベースをダウンロードしておきます。

    例:ヒトhg19データベースをダウンロードする

    対応する生物種のデータベースがない場合は、データベースを作成する必要があります。

    $ java -jar /usr/local/src/snpEff/snpEff.jar download hg19

    $ mkdir data/sacCer

    $ cd data/sacCer

    $ wget

    http://downloads.yeastgenome.org/curation/chromosomal_feature/saccharomyces

    _cerevisiae.gff

    $ mv saccharomyces_cerevisiae.gff genes.gff

    $ echo "sacCer.genome : Yeast" >> snpEff.config

    $ java -Xmx1G -jar snpEff.jar build -gff3 sacCer

  • Copyright © Amelieff Corporation All Rights Reserved. 49

    応 用 ) 遺 伝 子 情 報 の ア ノ テ ー シ ョ ン

    • snpEff…変異に対して遺伝子名や転写産物の情報、変異の影響などを付与します

    $ java –Xmx10G –jar /usr/local/src/snpEff/snpEff.jar eff

    -c /usr/local/src/snpEff/snpEff.config -i vcf sacCer -o vcf

    1K_ERR038793_1_qual_sorted_fil.vcf 1>

    1K_ERR038793_1_qual_sorted_fil_snpeff.vcf

  • Copyright © Amelieff Corporation All Rights Reserved. 50

    本 講 義 の 内 容

    • Reseq解析

    公開データ取得

    クオリティコントロール

    マッピング

    変異検出

    • RNA-seq解析

    公開データ取得

    クオリティコントロール

    マッピング

    発現定量

    ↓ ↓ ↓

    ↓ ↓ ↓