perl 转置矩阵

这里提供一个转置矩阵的perl脚本,R语言中的t()函数同样也能实现转置

 1 use strict;
 2 
 3 open A,"$ARGV[0]";
 4 
 5 my %ha;
 6 my $head=<A>;
 7 chomp($head);
 8 my @tag=split /\s+/,$head;
 9 
10 while(<A>){
11         chomp;
12         my @each=split;
13         for(my $i=0;$i<@each;$i++){
14                 $ha{$tag[$i]}.=$each[$i]."\t";
15         }
16 }
17 
18 close A;
19 
20 foreach my $k(@tag){
21         print "$k\t$ha{$k}\n";
22 }