我想在perl中合并两个二维数组。
例如,@ array1和@ array2是二维数组。 @ array1有200行和300列。 @ array2有200行和100列。我的问题是如何合并或连接这两个数组,以便我可以获得一个包含200行和400列的新数组,我也想打印这个新数组的每个元素。在perl中有类似于R中命令“cbind”的方式。非常感谢你的帮助。
答案 0 :(得分:2)
my @a1 = (
# make one row with elements 1..300, and multiply/make 200 of these
([1..300]) x 200
);
my @a2 = (
([1..100]) x 200
);
my @r;
for my $i (0 .. $#a1) {
# dereference $a1[$i] and $a2[$i] arrays,
# merge them, and push into @r as new row
push @r, [ @{ $a1[$i] }, @{ $a2[$i] } ];
print "@{ $r[$i] }\n";
}
# use Data::Dumper; print Dumper \@r;