【发布时间】:2022-11-14 06:21:18
【问题描述】:
我有斋戒
sp|A0A0B4J2F2|SIK1B_HUMAN 推定的丝氨酸/苏氨酸蛋白激酶 SIK1B OS=智人 OX=9606 GN=SIK1B PE=5 SV=1 MVIMSEFSADPAGQGQGQQKPLRVGFYDIERTLGKGNFAVVKLARHRVTKTQVAIKIIDK...>sp|A0A0B4J2F2|SIK1B_HUMAN_VEP 推定的丝氨酸/苏氨酸蛋白激酶 SIK1B OS=智人 OX=9606 GN=SIK1B PE=5 SV=1MVIMSEFSADPAGQGQGQQKPLRVGFYDIERTLGKGNFAVVKLARHRVTKTQVAIKIIDK..
两者具有相同的序列,但不同的 id 字符串。我想删除没有 _VEP 的 id 和字符串,并用 _VEP 保存 id 和序列。
我试试这个 f2 - 我需要删除的带有 seq 的文件 f1 - 包含所有 seq 的文件 grep -v -x -f f2.fasta f1.fasta > f3.fasta
还有另一个变种 awk 'NR==FNR { b[$0] = 1;下一个 } !b[$0]' f2.fasta f1.fasta > f3.fasta
我有这个输出
sp|A0A0B4J2F2|SIK1B_HUMAN_VEP 推定的丝氨酸/苏氨酸蛋白激酶 SIK1B OS=智人 OX=9606 GN=SIK1B PE=5 SV=1无序列
但我想要这个
>sp|A0A0B4J2F2|SIK1B_HUMAN_VEP 推定的丝氨酸/苏氨酸蛋白激酶 SIK1B OS=智人 OX=9606 GN=SIK1B PE=5 SV=1MVIMSEFSADPAGQGQGQQKPLRVGFYDIERTLGKGNFAVVKLARHRVTKTQVAIKIIDK..
【问题讨论】:
-
101 年前...我用一个 perl 程序
fastgrep来处理这样的事情。快速的网络搜索显示现在有许多其他语言的类似选项。 fastagrep input.fa '_VEP' > output.fa