2021 7/12 リンク修正
タイトルの通りのツール。
インストール
Technically, this program works on all operating systems; however, it has only been tested on Linux.
依存
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を用意する。
この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