macでインフォマティクス

macでインフォマティクス

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

シングルセルのアセンブルツール HyDA

 大部分の微生物は一般的な培地では培養不能で、シングルセルシーケンスは微生物の洞察を得るための重要な方法となっている。シングルセルシーケンスには、全ゲノム増幅によってDNAをランダム増幅させる必要があるが、シーケンスバイアスが非常に大きいという問題点がある。

Hybrid DeNovo Assembler(HyDA)はシングルセルのアセンブラ。ディープ・シングルセル・シーケンスを少し浅い数個のシングルセル・シーケンスに置き換え、コアセンブリーすることで、シーケンシング・コストを大幅に増加させることなく、サンプル損失のリスクを回避してハイクオリティなアセンブルを行うことができるとされ、論文中では、複数細胞から控えめにシーケンスしたfastqをmixし、SPAdesおよびIDBA-UDと比較してより長いコンティグを作ることを示している。入力データセットのシェアされた配列と排他配列を検出して分離することによって、キメラアセンブリを回避する機能を持つ。

 

 公式ページ(シングルセルシーケンスデータリンクは下の方)

Synergistic single cell sequencing

 

インストール

cent OSに導入した。

本体 SourceForge

https://sourceforge.net/projects/hyda/?source=typ_redirect

ソースコードをダウンロードし、解凍してビルドする。

 

tar xvf squeezambler-2.0.3-hyda-1.3.1.tar
cd squeezambler-2.0.3-hyda-1.3.1/
make clean; make #k-merのmaxは64、もっと増やすならMAXK=Nで指定する
cd bin/

 > ./import -h

$ ./import -h

Usage: import [options]

       Output (FASTA by default) file name is identified by -O option.

       Input files are identified by -q and -f options.

       Example: import -f=lib1-1.fasta,lib1-2.fasta -q=lib2-1.fastq,lib2-2.fastq -f=lib3.fasta -O=reads.fasta

       Above, lib1-1.fasta and lib1-2.fasta are paired reads in library 0, lib2-1.fastq and lib2-2.fastq are paired reads in library 1, and lib3.fasta are single reads in library 2.

 

 

-V,--version      prints the version

-h,--help      shows this help

-O,--output      =output file

-q,--fastqlibrary      =comma separated list, without space, of FASTQ file names in the library

-f,--fastalibrary      =comma separated list, without space, of FASTA file names in the library

-t,--truncate      =bad quality flag, truncate trailing nucleotides with the bad quality value in FASTQ files

-l,--minlen      =minimum length of a read (default 20)

-n,--maxn      =maximum number of N's in the relevant part of a read (default 4)

  --fastqout      fastq output

 

> ./assemble-unitig -h

$ ./assemble-unitig 

Error: inputs not specified, try 'assemble-unitig -h' for help.

[uesaka@cyano bin]$ ./assemble-unitig -h

Usage: assemble-unitig [options] reads-file

       Output files prefix is identified by -O option.

 

 

-V,--version      prints the version

-h,--help      shows this help

-O,--output      =output files prefix (mandatory)

-C,--config      =coloring config file, if absent all libraries are colored 0

-k,--kmer      =k as in kmer (mandatory)

-p,--procs      =number of threads per processing node (default 1)

-q,--fastq      input is in FASTQ format

-m,--machines      =number of machines (only needed when distributing among multiple machines)

-s,--slice      =0-base slice number (only needed when distributing among multiple machines)

-S,--single      single strand

  --exportkmers      export kmers with their multiplicities

 

 

assemble-finish -h

$ ./assemble-finish -h

Usage: assemble-finish [options] reads-file

       Input unitigs file is identified by -U option.

       Output files prefix is identified by -O option.

 

 

-V,--version      prints the version

-h,--help      shows this help

-U,--unitig      =input unitigs file ([collective] output of assemble-unitig [for multiple slices]) (mandatory)

-O,--output      =output files prefix, may be the same as assemble-unitig output prefix (mandatory)

-C,--config      =pairing config file

-c,--cov      =minimum average coverage of a condensed node, as a multiple of the assembly coverage mean (default 1.0)

-l,--lowcovlen      =maximum length of a low average coverage condensed node to be removed (default 1000nt)

-p,--procs      =number of threads

-q,--fastq      input is in FASTQ format

-S,--single      single strand

-a,--exportasm      export assembly graph for downstream applications, e.g. align-longreads

  --mincontiglen      =minimum length of an output contig (default k)

  --exportgraph      =max contig size, export those nodes of the condensed graph that are shorter than this value, in DOT format

  --exportlowcov      export removed low coverage condensed nodes

  --save      =file to save condensed graph into

  --load      =file to load condensed graph from

  --separatecolors      output contigs of each color into a separate file

  --nolowcovunitigs      do not even initially load those unitigs that have coverage less than 2

  --mincontigcov      =minimum coverage of an output contig [applicable only when --separatecolors used] (default 1.0)

  --keepcolor0      keeps all nodes in color 0 no matter what their coverages are. That is the cut-off for color 0 is 0.

bin/にパスを通しておく(echo export PATH=\$PATH:`pwd`\ >> ~/.bash_profile && source ~/.bash_profile)。

 

 

ラン

アセンブル前に fastqやfastaを HyDAの FASTA/FASTQ フォーマットに変換する必要がある。それにはimportコマンドを使う。公式からダウンロードできるテストデータをランしてみる。/Smith/PairedEnd/K04の4組のペアードエンドfastqを使う。

import -q=2_ACTTGA_L002_R1_001.fastq,2_ACTTGA_L002_R2_001.fastq \
-q=2_ACTTGA_L002_R1_002.fastq,2_ACTTGA_L002_R2_002.fastq \
-q=2_ACTTGA_L002_R1_003.fastq,2_ACTTGA_L002_R2_003.fastq \
-q=2_ACTTGA_L002_R1_004.fastq,2_ACTTGA_L002_R2_004.fastq \
-O=output.fasta
  •  -q --fastqlibrary =comma separated list, without space, of FASTQ file names in the library
  • -O --output =output file

output.fastaが出力される。 

 

k=11でアセンブルする。

assemble-unitig -k=11 -p=40 -O=out output.fasta
  • -p =number of threads per processing node (default 1)
  • -k =k as in kmer (mandatory)
  • -O =output files prefix (mandatory)

logと out.unitigsができる。

 

Finishing。-Uで先ほどの出力を指定する。

assemble-finish -p=40 -c=0.5 -U=out.unitigs -O=final output.fasta
  • -p =number of threads
  • -U =input unitigs file ([collective] output of assemble-unitig
  • -O =output files prefix, may be the same as assemble-unitig output prefix (mandatory)
  • -c =minimum average coverage of a condensed node, as a multiple of the assembly coverage mean (default 1.0)

final.extcontigsができる。

 

 

 

引用

Efficient Synergistic Single-Cell Genome Assembly

Narjes S. Movahedi, Mallory Embree, Harish Nagarajan, Karsten Zengler, and Hamidreza Chitsaz

Front Bioeng Biotechnol. 2016; 4: 42. Published online 2016 May 23.