Contenu connexe
Similaire à NGS現場の会第2回_アメリエフ株式会社_Qcleaner
Similaire à NGS現場の会第2回_アメリエフ株式会社_Qcleaner (20)
NGS現場の会第2回_アメリエフ株式会社_Qcleaner
- 1. FA S TQ フ ァ イ ル を 対 象 と し た
QCツールの開発と性能比較
2012年5月24日
アメリエフ株式会社
- 2. FASTQフォーマットについて
NGSから得られるテキストベースのリード配列ファイルの形式の一つ
@SEQ_ID
GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT
+
!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65
http://en.wikipedia.org/wiki/FASTQ_format
1行目: ID
2行目: リードの塩基配列
3行目: オプション
4行目: 2行目の塩基に対応した
Phred クオリティ値
(ASCIIコードで表記)
2
- 3. リードデータのQC
NGSから得られる raw-data は以下の問題を含むことがある
データそのものが破損(e.g. クオリティ行が抜けている)
Illumina CASAVA filter の結果への対処
リード全体、及び末端のクオリティが低い
未知の塩基(N)の数が多い
タグ配列の存在
マッピング前に、raw-dataのクオリティコントロール(QC)が必須
データ量が膨大(数十GB)なため処理が大変
3
- 4. 従来のQC方法
処理の流れ 使用ツール
長所
データクオリティチェック FastQC
・ 全てフリーソフト
Illumina CASAVA filter [Y] を除去 grep ・ 広く使われている
クオリティ20未満が80%以上の
FastX 短所
リードを除去
・ 複数のソフトを使用(手間がかかる)
クオリティ20未満の末端をトリム ・ cmpfastq: メモリを大量消費
未知の塩基(N)が多いリード除去
・ FASTQ形式にマッチしないリードの
PRINSEQ
検出ができない
配列長が短いリード除去
片側のみのリードを除外 cmpfastq
データクオリティチェック FastQC
*タグ配列に関する処理は現時点では除く
4
- 5. Qcleanerを用いる方法
処理の流れ 使用ツール
FASTQ形式にマッチするかチェック
Qcleaner: 弊社独自開発ツール
データクオリティチェック FastQC Perlで作成 (ソースは弊社オリジナル)
Illumina CASAVA filter [Y] を除去 複数ツールの機能を一つに統合
クオリティ20未満が80%以上の
リードを除去 長所
Qcleaner ・ コマンド一つ打つだけで実行できる
クオリティ20未満の末端をトリム
・ FASTQ形式のチェック機能も搭載
未知の塩基(N)が多いリード除去 ・ メモリ消費を抑えたので
大容量データにも対応
配列長が短いリード除去
・ 片側のみのリードを除去する際の
片側のみのリードを除外 処理をcmpfastqに比べて
大幅に高速化
データクオリティチェック FastQC
*タグ配列に関する処理は現時点では除く
5
- 6. Qcleanerの使用方法
使い方:
qcleaner.pl --i1 <input file 1> --i2 <input file 2> --o <output dir> --qp <qvalue,percent>
-n <number> --trim <qvalue> --length <length num> --write
--i1 <file> Input fastq_1 file
--i2 <file> Input fastq_2 file (this script treats pair-end)
--o <dir> Output directory name (default: output files are created directly below)
--qp <int,int> Check a low quality read, <quality value, percent>
--n <int> Allowable number of N content
--trim <int> Both term bases are trimmed based on this qvalue.
--length <int> Check a short read.
--write Output excluded reads in each phase
使用例:
$ ./qcleaner.pl --i1 ERR034601_1.fastq --i2 ERR034601_2.fastq –o out --qp 20,80
-n 6 --trim 20 --length 20 --write
6
- 7. QC性能比較
対象FASTQファイル
Accession: ERR034601, data size 19 GB × 2
Sample: Human, exome sequencing of the JPT
Experiment: Illumina HiSeq 2000, 90 bp, paired-end
QC条件
リード除去の条件:
・ Illumina CASAVA filterの結果がY
・ クオリティ値が20未満の塩基が80%以上存在
・ 未知の塩基(N)の数が6個以上存在
・ リード長が20塩基未満
・ QC処理の結果発生したシングルリードの除外
リードトリミングの条件:
・ 両末端のクオリティ値が20未満の塩基をトリム
7
- 8. 結果: 処理時間の比較
従来のQC法 Qcleaner
データクオリティチェック(FastQC) 20分 20分
Illumina CASAVA filter [Y] を除去 4分 12分
クオリティ20未満が80%以上の
リードを除去 41分
クオリティ20未満の末端をトリム 3時間31分
5時間12分
未知の塩基(N)が多いリード除去 35分
配列長が短いリード除去 34分
片側のみのリードを除外 3時間22分 27分
データクオリティチェック(FastQC) 19分 17分
Total time 9時間26分 6時間28分
同じQC内容での処理時間はQcleanerの方が従来のQCより短い
Qcleanerの[FASTQ形式のチェック機能: ON] → プラス 4時間程度かかる
8
- 9. 結果: メモリ使用量の比較
25
従来のQC Qcleaner
20
Memory usage (GB)
15
10
5
0
0 50 100 150 200 250 300 350 400 450 500 550 600
Execution time (min)
*Qcleanerは[FASTQ形式のチェック機能: ON] で計測
メモリ使用量も、Qcleanerの方が従来のQCより大幅に少ない
9
- 10. 結果:リード・塩基数の変化
ERR034601_1.fastq ERR034601_2.fastq
従来のQC Qcleaner 従来のQC Qcleaner
リード数(処理前からの割合) 57,019,726(96.24%) 57,019,726(96.24%) 57,019,726(96.24%) 57,019,726(96.24%)
塩基数(処理前からの割合) 4,941,135,848(92.66%) 4,941,135,848(92.66%) 4,871,975,403(91.37%) 4,871,975,403(91.37%)
リード最大長さ 90 90 90 90
リード平均長さ 86.66 86.66 85.44 85.44
リード長さ中央値 90 90 90 90
リード最少長さ 20 20 20 20
最頻値 90 90 90 90
最頻値の数 47,125,726 47,125,726 44,127,821 44,127,821
範囲 71 71 71 71
標準偏差 10.39 10.39 12.13 12.13
従来のQCとQcleanerの結果は、完全に一致する。
10
- 11. 結果: Base quality
処理前 従来のQC Qcleaner
Base quality score
ERR034601_1.fastq
ERR034601_2.fastq
Position in read (bp)
赤線:中央値 , 黄箱:四分位数間領域 ( 25 - 75 % ), ひげ:上10 %・下90%, 青線:平均値 11
- 12. 結果:N含有量の変化
0.05
ERR034601_1.fastq
0.04
処理前 従来のQC Qcleaner
0.03
0.02
Per base N content
0.01
0
0.125
ERR034601_2.fastq
0.1
0.075
0.05
0.025
0
Position in read
12
- 13. Length distribution (×107)
0
1
2
3
4
5
0
1
2
3
4
5
40
50
40
50
20-21 20-21
22-23 22-23
24-25 24-25
26-27 26-27
28-29 28-29
30-31 30-31
32-33 32-33
従来のQC
34-35 34-35
36-37 36-37
ERR034601_2.fastq
ERR034601_1.fastq
38-39 38-39
40-41 40-41
42-43 42-43
44-45 44-45
Qcleaner
46-47 46-47
48-49 48-49
50-51 50-51
52-53 52-53
54-55 54-55
56-57 56-57
58-59 58-59
60-61 60-61
Sequence Length
62-63 62-63
64-65 64-65
66-67 66-67
68-69 68-69
70-71 70-71
結果:リード長の分布
72-73 72-73
74-75 74-75
76-77 76-77
78-79 78-79
80-81 80-81
82-83 82-83
84-85 84-85
86-87 86-87
88-89 88-89
90-91 90-91
13