1
情况非常简单。我想创建一个n行m列的矩阵A
,其中每个元素的值由预定的函数f(i, j)
给出。什么是最优雅的方式来实现这一目标?根据行和列构造矩阵
情况非常简单。我想创建一个n行m列的矩阵A
,其中每个元素的值由预定的函数f(i, j)
给出。什么是最优雅的方式来实现这一目标?根据行和列构造矩阵
可以使用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
,如果你提供了一个重复的例子,这会有所帮助,但你可以做这样的事情:
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)
可能重复由R中的函数f(i,j)给出的元素矩阵](http://stackoverflow.com/questions/13081611/most-efficient-way-to-fill-out-a- matrix-of-elements-由功能fi-j-in) – mnel
我想我会打开这个。它们是非常密切相关的,但这个以更简单,更直接的方式回答了这个问题。 –