5
我有兩個文件如下:如何找到兩個匹配的ID在兩個文件中,然後用自己的值來計算
文件#1
A 20.68
B 17.5
C 15.6
D 20.6
E 27.6
文件#2
C 16.7
X 2.9
E 7.0
A 15.2
第一列是ID,第二列是得分。我試圖在兩個文件中找到匹配的ID,然後使用FILE#1中相應的分數計算FILE#2中的最終分數(Score2 - Score1)。以下是結果,我想:
輸出
C 1.1
E -20.6
A -5.48
通過下面的代碼,我能得到匹配的ID,但我不知道如何調用從文件#2相應的分數做計算的FILE# 2。對你的幫助表示感謝!
open my $A, 'list1.txt';
open my $B, 'list2.txt';
my $h;
map { chomp; $h{(split /\s+/)[0]} ++} <$A>;
while (<$B>) {
my @split = split(/\s+/,$_);
my $ID = $split[0];
my $score = $split[1];
print "$ID\t$score\n" if $h{$ID};
}
謝謝你,米勒。哈希是非常有用的。 – 2014-09-25 22:06:23