macでインフォマティクス

macでインフォマティクス

NGS関連のインフォマティクス情報についてまとめています。

Pacbioロングリードのシミュレーター

 

PBSIMはPacbioリードのシミュレーションを行うツールである。ユーザーの持っているPacbioデータをもとにリードの長さやクオリティをシミュレートすることもできるため、実際の解析に適用しやすい。

 

 

GitHub - pfaucon/PBSIM-PacBio-Simulator: This is an updated mirror of the original PacBio Read Simulatorからソースコードをダウンロードしてビルドする。

 

autoreconf -i 
./configure
make

ビルドが終わると、src/にpbsimができる。これにパスを通す。Pacbioのモデルデータとして/dataのファイルを参照する。

 

リードのシミュレーション

pbsim --data-type CLR --depth 20 --model_qc PBSIM-PacBio-Simulator-master/data/model_qc_clr ref.fa

 --depth カバレッジ指定

--data-type CLRを指定。他にCCSがある。

--model_qc

 エラー率とリード長はオーサーらの設定したモデルが反映される。CLR、CCSは大崎さんのブログを参照してください。 バクテリアサイズだとほんの数秒でシミュレーションは終わる。

 

終わると、fasta一つに付き、3つのファイルが出力される。一つはシミュレートされたfastqファイルで、欲しいのはこれである。他2つはリファレンスから作られたエラー導入前のfasta配列とリファレンス、アライメント結果のファイルである。

 

生成されたfastqをもとの配列にアライメントしてみる。

bwa mem -x pacbio -t 12 ref.fa sd_0001.fastq > sd_0001.sam

sd_0001.fastqがPBSIMでジェネレートされたfastqファイルである。-x pacbio をつけ、

Pacbioのアライメントに最適化している("-k17 -W40 -r10 -A1 -B1 -O1 -E1 -L0"をつけるのと同じになる)。

 

sd_0001.samをsamtoolsでbamにしてソートし、IGVで開く。下はCLRのシミュレートリード。

f:id:kazumaxneo:20170617154716j:plain

数kbpのリードがアライメントされているが、indel、ミスマッチはやや多い。

 

 

CCSもテストする。

pbsim --data-type CCS --depth 20 --model_qc PBSIM-PacBio-Simulator-master/data/model_qc_ccs ref.fa

 bamにして、CLRのリードとエラーを比べてみる。

上がCCS、下が先ほどのCLRのリードである。一目見てCCSのエラーが減ってるのが分かる。

f:id:kazumaxneo:20170617161824j:plain

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

引用

PBSIM: PacBio reads simulator—toward accurate genome assembly 

Yukiteru Ono Kiyoshi Asai Michiaki Hamada Bioinformatics (2013) 29 (1): 119-121. DOI: https://doi.org/10.1093/bioinformatics/bts649

https://academic.oup.com/bioinformatics/article/29/1/119/273243/PBSIM-PacBio-reads-simulator-toward-accurate