构造矩阵作为行和列的函数

时间:2012-11-01 16:08:36

标签: r

情况非常简单。我想创建一个n行和m列的矩阵A,其中每个元素的值由预定函数f(i, j)给出。实现这一目标的最优雅方式是什么?

2 个答案:

答案 0 :(得分:10)

您可以使用outer

outer(1:3,1:3,function(i,j) i^2+j)
     [,1] [,2] [,3]
[1,]    2    3    4
[2,]    5    6    7
[3,]   10   11   12

答案 1 :(得分:0)

如果你提供了一个可重复的例子,那会有所帮助,但你可以这样做:

f <- function(i,j) i*j
m <- 4
n <- 2
out <- apply(expand.grid(1:m, 1:n), 1, function(x) f(x[1],x[2]))
dim(out) <- c(m,n)