my @uniq; my %seen = (); for (my $i=0; $i<@name1; $i++) { push (@uniq, $name1[$i]) unless $seen{$name1[$i]}++; # THIS BIT BELOW DOESN'T WORK, I'M TRYING TO SAY IF # NAME1[$] IS SEEN FOR THE FIRST TIME PRINT THE CORRESPONDING VALUES IN $NAME2 AND $PERCENT print "$name1[$i]\t$name2[$i]\t$percent[$i]\n" unless $seen{$name1[$i]}++; }