使用python修复Fastq文件中偶尔丢失的序列和质量分数线

2024-10-03 13:23:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有几个Fastq文件,在这些文件中,我偶尔会丢失数据行。例如,这里是一个正确的阅读与所有四行

@M01698:289:000000000-AVDJ5:1:1101:15411:3896 1:N:0:GTGAATCC+TCCAGGTA

CGCGGCGATGGCGGAGCTGAATTACATTCCCAAC

+

GGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHG

然后下一次读取只有两行,没有序列和质量分数数据

@M01698:289:000000000-AVDJ5:1:1101:19764:3903 1:N:0:GTGAATCC+TCCAGGTA

+

有没有办法找到这些具体的,不完整的阅读和简单地添加一个空行上面和下面,使之成为一个完整的阅读?你知道吗

    g=open(New file,"w")
    while True:
        ID = f.readline()
        if ID == '':
            break
        seq = f.readline()
        ID2 = f.readline()
        qs = f.readline()
    if seq.contains("+"):
        newseq=seq.replace("/n" "+" "/n")
    else:
        newseq=seq

    g.write(ID)
    g.write(newseq)
    g.write(ID2)
    g.write(qs)

Tags: 文件数据idreadlineifseqfastqwrite