macでインフォマティクス

macでインフォマティクス

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

複数のFASTAファイルをNNN...で連結する CombineFasta

2021 7/12 リンク修正

 

タイトルの通りのツール。

 

インストール

Technically, this program works on all operating systems; however, it has only been tested on Linux.

依存

  • Java jdk version 1.8
  • This git repository
  • A decent (>16Gb) amount of RAM

Github

git clone https://github.com/njdbickhart/CombineFasta.git

java -jar CombineFasta-master/store/CombineFasta.jar 

$ java -jar CombineFasta-master/store/CombineFasta.jar 

CombineFasta: a simple tool to join/merge fast[a/q] files

Version: 0.0.9

Usage: java -jar CombineFasta.jar [mode] [mode options]

Modes:

order Combine and orient separate fasta files

pair Restore jumbled paired end fastq files

standardize Make fasta lines standard in a file

missassembly Correct assembly based on aligned map markers

 

 

実行方法

1、CombineFasta order

複数のfasaファイルを指定したNNNで連結する。

CombineFasta order:

Usage: java -jar CombineFasta.jar order -i [tab delim input] -o [output fasta] -p [padding bases] -n [fasta name]

-i Input single entry fasta files in tab delimited format with orientations in second column

-o Output fasta file name

-p Number of N bases to pad fasta entries

-n Name of merged fasta sequence [default: "merged"]

 

ランに必要なのは、結合するfastaファイル名と結合の向きを示したタブ区切りファイルになる。例えばnew_scaffold_seg1.faとnew_scaffold_seg2.faをつなぐ。ただし、1は=>向き、2は<=向きで繋ぐ。その場合、次のようなtab delimited fileを用意する。

f:id:kazumaxneo:20190823205242p:plain

このTSVファイル"contig_list"を指定してランする。2配列感はN 100bpで繋ぐ。ヘッダーはnewとする。

java -jar CombineFasta.jar order -i contig_list -o my_new_fasta.fa -p 100 -n "new"

Githubの例は、リファレンスから指定の領域の配列を抽出、それをechoでTSVファイルに記録、最後にCombineFasta.jar order をランする流れになっている。

#samtools faidxコマンドで指定領域の配列取り出し
samtools faidx my_old_fasta.fa oldscaffold:1-1000 > new_scaffold_seg1.fa
samtools faidx my_old_fasta.fa oldscaffold:1000-2000 > new_scaffold_seg2.fa

#configファイルに記載
echo -e "new_scaffold_seg1.fa\t+" > contig_order.list
echo -e "new_scaffold_seg2.fa\t-" >> contig_order.list

#CombineFasta.jar orderをラン
java -jar CombineFasta.jar order -i contig_order.list -o new_fasta.fa -p 100 -n "newChr"

100bpずつをN100bpで繋いだ時の出力

>  cat new_fasta.fa

$ cat new_fasta.fa 

>newChr

GGCGCGCCATCGCCGGCTGGCGGAAATTACCGAAATGATCCACACCGCTAGTTTGGTCCA

CGATGACGTGGTGGATGAGGCGGATCTGCGGCGGAATGTGNNNNNNNNNNNNNNNNNNNN

NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN

NNNNNNNNNNNNNNNNNNNNGAAGAATTTAATCGTATTAATCACGAGCGGGAAGCCCAGG

GAGAAAGCTTATTTGCCAATCCCCGTAATGCCGCCGCCGGTACTCTCCGTCAGTTGGACC

C

 

他のコマンドはdocumentがついたら更新します。

引用

https://github.com/njdbickhart/CombineFasta