【发布时间】:2012-09-17 18:02:36
【问题描述】:
如何创建一个矩阵(正常意义,而不是 R 意义),其中 (i,j) 条目是 i 和 j 的函数?我认为它涉及apply(),但我似乎无法弄清楚如何使用它。
假设我有列 x1、x2、... 和行 y1、y2,其中 x1 和 y1 是 R 对象,我想构建一个表/矩阵,其中条目是每个 i 的 xi 和 yj 的函数和 j。
对不起,如果其他地方已经回答了这个问题。
【问题讨论】:
如何创建一个矩阵(正常意义,而不是 R 意义),其中 (i,j) 条目是 i 和 j 的函数?我认为它涉及apply(),但我似乎无法弄清楚如何使用它。
假设我有列 x1、x2、... 和行 y1、y2,其中 x1 和 y1 是 R 对象,我想构建一个表/矩阵,其中条目是每个 i 的 xi 和 yj 的函数和 j。
对不起,如果其他地方已经回答了这个问题。
【问题讨论】:
我不确定我是否理解整个问题。我只回答第一句话的问题:
fun <- function(i,j) i*j
rows <- 1:5
cols <- 1:3
outer(rows,cols,FUN=fun)
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 2 4 6
[3,] 3 6 9
[4,] 4 8 12
[5,] 5 10 15
【讨论】:
outer(rows, cols, function(i, j) i*j)
outer(rows,cols, "*")或者只是简单的outer(rows,cols)(因为"*"是FUN的默认值)