gpt4 book ai didi

shell - 使用 SED/AWK 将 FASTQ 转换为 FASTA

转载 作者:行者123 更新时间:2023-12-03 13:06:22 25 4
gpt4 key购买 nike

我有一个数据,它总是以四块的形式出现
采用以下格式(称为 FASTQ):

@SRR018006.2016 GA2:6:1:20:650 length=36
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGN
+SRR018006.2016 GA2:6:1:20:650 length=36
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!+!
@SRR018006.19405469 GA2:6:100:1793:611 length=36
ACCCGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
+SRR018006.19405469 GA2:6:100:1793:611 length=36
7);;).;);;/;*.2>/@@7;@77<..;)58)5/>/

是否有一种简单的 sed/awk/bash 方式将它们转换为
这种格式(称为 FASTA):
>SRR018006.2016 GA2:6:1:20:650 length=36
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNGN
>SRR018006.19405469 GA2:6:100:1793:611 length=36
ACCCGCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC

原则上,我们希望提取每个 4 块中的前两行
并替换 @> .

最佳答案

这是一个老问题,已经提供了许多不同的解决方案。由于接受的答案使用 sed 但有一个明显的问题(当 @ 符号作为质量行的第一个字母出现时,它将用 > 替换 @),我觉得有必要提供一个简单的基于 sed 的解决方案,它实际上有效:

sed -n '1~4s/^@/>/p;2~4p' 

所做的唯一假设是每次读取只占用 FASTQ 文件中的 4 行,但根据我的经验,这似乎非常安全。

fastx 工具包中的 fastq_to_fasta 脚本也可以使用。 (值得一提的是,您需要指定 -Q33 选项以适应现在常见的 Phred+33 qual 编码。这很有趣,因为它无论如何都会丢弃质量数据!)

关于shell - 使用 SED/AWK 将 FASTQ 转换为 FASTA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1542306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com