my @counts; while (<>) { my ($id, @fields) = split; for my $col_num (0..$#fields) { ++$counts[$col_num]{ $fields[$col_num] }; } }