使用 awk(或 python)将匹配行中的序列追加到文件中?

append sequences from matching lines over a file using awk (or python)?

我正在尝试为每个人连接一个文件中的所有基因序列,并认为可能有一种方法可以通过使用 awk 或 sed 的 oneliner 来完成此操作。

假设我有一个包含 ID 名称(Mex1、Can2 等)和序列(TGAC...)的文件,并且每一行都有不同的 ID、基因(A、B)和序列。

Mex1_A TGACTT
Mex2_A TGACTA
CAN2_A TCGGGG
CAN4_A TCGACG
Mex1_B TCGGCA
Mex2_B TCGCCC
CAN2_B TCTACT
CAN4_B TCTACC

有没有办法从每个匹配的 ID 追加序列,将每个个体的所有序列数据连接在一行中,例如:

Mex1 TGACTTTCGGCA
Mex2 TGACTATCGCCC
CAN2 TCGGGGTCTACT
CAN4 TCGACGTCTACC

使用这些编辑器可以吗?也许最好在 perl/python

中完成
$ awk -F'[_ ]' '{a[] = a[] } END{for (i in a) print i, a[i]}' file
CAN4 TCGACGTCTACC
Mex1 TGACTTTCGGCA
Mex2 TGACTATCGCCC
CAN2 TCGGGGTCTACT