my %seen; seek INPUT, 0, 0; while () { chomp; my $line = $_; my @elements = split (",", $line); my $col_name = $elements[1]; #print " $col_name \n" if ! $seen{$col_name}++; } while ( my ( $col_name, $times_seen ) = each %seen ) { my $loc_total = $times_seen * $dd; print "\n"; print " $col_name \t\t : = $loc_total"; printf OUTPUT "%-34s = %15s\n", $col_name , " $loc_total "; } ############## ################### my %seen2; seek INPUT1, 0, 0; while () { chomp; my $line = $_; my @elements1 = split (",", $line); my $col_name = $elements1[1]; my $col_type = $elements1[5]; $seen2{$col_name}++ if $col_type eq "YES"; } while ( my ( $col_name, $times_seen2 ) = each %seen2 ) { my $loc_total = $times_seen2 ; print "\n $col_name \t\t= $loc_total"; printf OUTPUT "%-34s = %15s\n", $col_name , $times_seen2 ; } close INPUT;