情况很简单。我想创建一个A
n 行 m 列的矩阵,其中每个元素的值由预定函数给出f(i, j)
。实现这一目标的最优雅的方法是什么?
问问题
94 次
2 回答
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
于 2012-11-01T16:20:49.120 回答
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)
于 2012-11-01T16:16:12.947 回答