我有两个文件(每个两列,按标签拆分),我想根据第一列进行比较。如果第一列的值在两个文件上都相同,我想使用第二列值创建一个新文件。另外,请考虑FILE1第一列中的ID可以重复。基本上我有:如何比较两个文件的第一列,但得到第二个(使用Perl)
FILE1:
TRINITY_DN10001_c0_g1_i1 TRINITY_DN10001_c0_g1_TRINITY_DN10001_c0_g1_i1_g.84091_m.84091
TRINITY_DN100032_c0_g2_i1 TRINITY_DN100032_c0_g2_TRINITY_DN100032_c0_g2_i1_g.20078_m.20078
TRINITY_DN100032_c0_g2_i1 TRINITY_DN100032_c0_g2_TRINITY_DN100032_c0_g2_i1_g.42263_m.42263
.....
TRINITY_DN99985_c0_g1_i1 TRINITY_DN99985_c0_g1_TRINITY_DN99985_c0_g1_i1_g.21199_m.21199
FILE2:
TRINITY_DN100007_c0_g1_i1 GO:0001071,GO:0003674
TRINITY_DN100032_c0_g2_i1 GO:0000149,GO:0001775
.....
TRINITY_DN99997_c0_g1_i1 GO:0000166,GO:0001882
我需要这样的:
TRINITY_DN100032_c0_g2_TRINITY_DN100032_c0_g2_i1_g.20078_m.20078 GO:0000149,GO:0001775
TRINITY_DN100032_c0_g2_TRINITY_DN100032_c0_g2_i1_g.42263_m.42263 GO:0000149,GO:0001775
.....
,我认为这可以通过组合两个哈希表来完成Perl,在某种程度上类似于to this answer。
但我对Perl很新,所以我完全不知道该怎么做。如果有人能够帮助修改以前的脚本(或以不同的方式解决这个问题),我将不胜感激。
在此先感谢! ☺
每个文件第一列中的ID是否唯一? – simbabque
Ops ...我没有考虑到这一点!你是对的。 FILE1在第一列中有一些ID重复。 FILE2没有这个问题。任何建议?谢谢! –