2

我有一个方阵文件,我想将它加载到 Perl 中。我想像二维数组一样操作,在 C 中就像矩阵 [14] [50],然后它直接进入第 14 行第 50 列。有没有办法做到这一点?

我可以直接修改输入文件还是必须将其加载到变量中,进行操作然后将其写出来?

4

2 回答 2

1

我编写了一个模块,它可能能够满足您的需求。Tie::Array::CSV. 它创建了一个神奇的arrayrefs 数组(一个Perl 二维数组),它允许行和元素对文件进行读/写访问。根据您的列分隔符,您可能需要调整选项(默认为 CSV)。

于 2012-05-16T12:52:59.823 回答
0

它使用不同的语法非常相似。

>matrix <- array(1:10000, dim=c(100,100)) #50 X 50 matrix
>somevariable <- matrix[14,51] #somevariable will now be 5014

把它变成一个 R 脚本

并从 perl 中调用它,例如

my $var = `rscript arguments`; # $var is now the output of your rscript
于 2012-05-15T16:02:04.860 回答