这里提供一个转置矩阵的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 }