处理fa文件去重失败

使用sort xx.fa | uniq xx.fa xxdeldup.fa后显示仍有序列重复,使用其他如sort |sed仍不能解决,求指点如何成功去重(个别文件不能成功去重)

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这篇博客: CentOS 7的常用操作命令中的 2.2.2.6 uniq 命令用于检查及删除文本文件中重复出现的行列,一般与 sort 命令结合使用。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

    uniq语法 uniq [-icud]
    [输入文件]
    -i :忽略大小写字符的不同
    -c :进行计数
    -u :只显示唯一的行
    -d或–repeated 仅显示重复出现的行列。

  • 以下回答来自chatgpt:

    根据提供的参考资料,我们可以使用sort和uniq命令来去重fa文件。下面是具体的解决方案:

    1. 首先,使用sort命令对fa文件进行排序。排序是为了使重复的行(序列)相邻,以便后续的uniq命令可以正确去重。
    sort xx.fa > sorted.fa
    
    1. 使用uniq命令和-c选项计数重复的行(序列),并将结果输出到一个临时文件。
    uniq -c sorted.fa > counted.fa
    
    1. 使用awk命令过滤出重复的行(序列),并将结果输出到最终的去重文件。
    awk '$1 > 1 { print substr($0, index($0,$2)) }' counted.fa > xxdeldup.fa
    

    解释:awk命令首先判断每行的第一列(重复次数是否大于1),如果是,则输出从第二列到最后的内容,即去除了重复次数的行(序列)。

    请注意,如果你的fa文件是以大写字母表示碱基序列,而你想要忽略大小写进行去重,可以在sort命令中使用-i选项。

    希望以上解决方案能够帮助你成功去重fa文件。如果你还有其他问题,请随时提问。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^