SVの検出
生成した bam ファイルをもとにSV( 構造変異 )を検出します。
SVにはinversion, tandem duplication, translocation, deletion, insertionなどが
あります。
GenomonSV
GenomonPipelineからGenomonSVを呼び出してSVを検出します。
染色体番号は自然順でなく辞書順でソートされていますので注意してください。
下のコマンドはheaderを除いて自然順にソートしたものを表示します。
[username@gc016 ~]$cat genomonSV.result.txt | grep -v ^Chr_1 | grep -v ^# | sort -V | less
GenomonSVについては
https://supcom.hgc.jp/internal/materials/lect-pdf/20171030/Genomon2_Tutorial_1.pdf ( hgcのアカウントが必要です。)
を参考にしてください。
Note
fastaファイルのprefix
Genomonはfastaファイルのprefixからchrを取り除いていますが、
このパイプラインではchrをつけていても動くように
GenomonSV-0.6.1b1とsv_utils-0.5.1を改変しています。
Note
高速化
GenomonSV-0.6.1b1を改変してGenomonSV parseが2倍速くなりました。
(全体としては20時間かかったサンプルが15時間になりました。)
Note
高速化2
GenomonSV-0.6.1b1をさらに改変してGenomonSV parseが速くなりました。
(全体としては1日かかったサンプルが14時間になりました。)
Manta
SV検出結果を複数のvcfファイルとして出力します。
ファイル名 |
説明 |
|---|---|
diploidSV.vcf.gz |
diploid modelでスコアを得たSVやindel |
somaticSV.vcf.gz |
somatic variant modelでスコアを得たSVやindel |
candidateSV.vcf.gz |
スコアを得ることができなかったSVやindel |
Mantaについては https://github.com/Illumina/manta/blob/master/docs/userGuide/README.md を参考にしてください。
vcfファイルのフォーマットなどは https://samtools.github.io/hts-specs/VCFv4.1.pdf を見てください。
GRIDSS
SV検出結果を{サンプル名}.gridss.vcfとして出力します。
(サンプル設定ファイルでtumorとnormalを設定した場合はさらにgridss_somatic_filterを実行します。)
simpleSV-annotated.Rでannotated.vcfとsimple.bedを出力します。
annotated.vcfでは以下がanotateされています
CTX(Inter-chromosomal translocation)
INV(Inversion)
INS(Insert)
DEL(Delete)
DUP(Tandem Duplicate)
simple.bedはCTXを含みません。FILTERカラムがPASSのものだけ抽出しています。
GRIDSSについては https://github.com/PapenfussLab/gridss を参考にしてください。
Note
ローカル領域をworkingdirとして設定する
Lustreではなく計算ノードのローカル領域(/workなど)をworkingdirとして設定できるようになっています。
設定した場合、ジョブ完了後にworkingdirを削除します。
DNAパイプライン設定ファイルのgridss_assembly_nodeを1に設定してください。
Note
simple.bed
simpleSV-annotated.RのsimpleEventTypeでCTXしか検出されない場合はsimple.bedは作成されません。
Note
OS8検証用ノード(os8.q)
os8.qで動作するように改変されています。
ITD Assembler
ITD(internal tandem duplication)を検出します。
結果はresults_final.txtに出力されます。
メモリの使用量を減らすため以下のスクリプトを書き直して使っています。
cluster_bins.hs -> ITD_cluster_bins.sh
iterate_on_bins.hs -> ITD_iterate_on_bins.sh
post_processing.hs -> ITD_post_processing.sh
find_kmers_2_latest.hs -> find_kmers_2_latest.py
また、パイプライン設定ファイルでexon_only = trueにすると
exon_bed_fileで設定した領域をbamファイルから抽出することで
メモリの使用量を減らすことができます。
ITD Assemblerについては
を参考にしてください。
Note
blast用データベース
以下のコマンドで作成しました。
[username@gc016 ~]$/usr/local/package/blast+/2.9.0/bin/makeblastdb \
-in /home/kks_th/CaGMeJ_git/SRC/v8/database/GRCh38/Homo_sapiens_assembly38.fasta \
-dbtype nucl \
-out mydb_GRCh38
ソフトウェア名 |
バージョン |
使い方 |
|---|---|---|
phrap |
1.090518 |
パス指定 |
Note
phrapのライセンス
ITD Assemblerではphrapを使います。
このパイプラインではアカデミックライセンスで利用しています。( http://www.phrap.org/consed/academic_agreement.txt )
同じグループ内で利用できます。
営利目的では利用できません。