我的成对 DNA 序列数据以下列方式显示相似性。
AATGCTA|1 AATCGTA|2
AATCGTA|2 AATGGTA|3
AATGGTA|3 AATGGTT|8
TTTGGTA|4 ATTGGTA|5
ATTGGTA|5 CCTGGTA|9
CCCGGTA|6 GCCGGTA|7
GGCGGTA|10 AATCGTA|2
GGCGGTA|10 TGCGGTA|11
CAGGCA|12 GAGGCA|13
以上是一个示例输入文件,原始文件是几百万行。我希望输出根据行之间的公共元素对重叠的 id 进行聚类,并将它们输出到每个聚类的一行,如下所示
AATGCTA|1 AATCGTA|2 AATGGTA|3 AATGGTT|8 GGCGGTA|10 TGCGGTA|11
TTTGGTA|4 ATTGGTA|5 CCTGGTA|9
CCCGGTA|6 GCCGGTA|7
CAGGCA|12 GAGGCA|13
我目前正在尝试使用mcl和silix对它们进行集群,但我没有成功运行 silix。但是 mcl 目前正在进行中,我想知道在 awk 或 perl 中是否有其他聪明的方法可以做到这一点。我很感激一些解决方案,谢谢。(这是我的第一篇文章,如果我犯了一些错误,我很抱歉)
只是为了让它更简单......很容易说我的输入是,
1 2
2 3
3 8
4 5
5 9
6 7
10 2
10 11
12 13
我希望输出是,
1 2 3 8 10 11
4 5 9
6 7
12 13