如何根据fasta快速统计基因组大小及其各染色体长度?

基因组长度

利用seqkit统计长度

seqkit stat test.fa

结果如下:

file      format  type  num_seqs      sum_len  min_len      avg_len     max_len
test.fa  FASTA   DNA        149  396,098,845   10,246  2,658,381.5  44,776,151

sum_len总长度

各条染色体

利用pyfaidx

pip install pyfaidx
faidx test.fa -i chromsizes > test.size

或者利用samtools建立的索引

samtools faidx test.fa | cut -f1,2 > size

结果

Chr3	39460439
Chr10	25306509
Chr4	36012661
Chr11	31788916
Chr7	30689911
Chr9	23252223
Chr1	44776151
Chr8	30494550
Chr5	31364062
Chr6	32851673
Chr2	36966474
Ctg22	50000
Ctg16	14288
Ctg21	238256
Ctg20	99285
Ctg23	38357

这里把gap也算进去了。如果不想统计,就自己写个脚本吧。

https://pypi.org/project/pyfaidx/

原文地址:https://www.cnblogs.com/jessepeng/p/14821950.html