python 中 Bio中SeqIO模块处理fastq数据
001、输出fastq的ID
[root@PC1 test02]# ls a.fastq test.py [root@PC1 test02]# cat a.fastq ## 测试fasq数据,一共两个reads @SRR8442980.988/2 AAGG + :FFF @SRR8442980.1134/1 AAAAAAAATATAATTCCA + FFFFFFFFFFFFFFFFFF [root@PC1 test02]# cat test.py ## 测试程序 from Bio import SeqIO temp = SeqIO.parse("a.fastq", "fastq") for i in temp: print(i.id) [root@PC1 test02]# python3 test.py ## 执行程序,输出id SRR8442980.988/2 SRR8442980.1134/1
002、输出name
[root@PC1 test02]# ls a.fastq test.py [root@PC1 test02]# cat a.fastq ## 测试fastq @SRR8442980.988/2 AAGG + :FFF @SRR8442980.1134/1 AAAAAAAATATAATTCCA + FFFFFFFFFFFFFFFFFF [root@PC1 test02]# cat test.py ## 测试程序 from Bio import SeqIO temp = SeqIO.parse("a.fastq", "fastq") for i in temp: print(i.name) ## 输出name [root@PC1 test02]# python3 test.py SRR8442980.988/2 SRR8442980.1134/1
003、输出碱基序列
[root@PC1 test02]# ls a.fastq test.py [root@PC1 test02]# cat a.fastq ## 测试fastq @SRR8442980.988/2 AAGG + :FFF @SRR8442980.1134/1 AAAAAAAATATAATTCCA + FFFFFFFFFFFFFFFFFF [root@PC1 test02]# cat test.py ## 测试程序 from Bio import SeqIO temp = SeqIO.parse("a.fastq", "fastq") for i in temp: print(i.seq) [root@PC1 test02]# python3 test.py ## 输出fastq AAGG AAAAAAAATATAATTCCA
004、输出每个碱基的质量值
[root@PC1 test02]# ls a.fastq test.py [root@PC1 test02]# cat a.fastq ## 测试fastq @SRR8442980.988/2 AAGG + :FFF @SRR8442980.1134/1 AAAAAAAATATAATTCCA + FFFFFFFFFFFFFFFFFF [root@PC1 test02]# cat test.py ## 测试程序 from Bio import SeqIO temp = SeqIO.parse("a.fastq", "fastq") for i in temp: print(i.letter_annotations["phred_quality"]) [root@PC1 test02]# python3 test.py ## 输出碱基质量值 [25, 37, 37, 37] [37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37, 37]
。