主要功能如下代码:
#f is a function that has two parameters and returns one value:
f <- function(a, b) {
a * b
}
#x is a's value group
x <- c(1,2,3,4)
#y is b's value group
y <- c(4,5,6)
我想得到f(x,y)所有可能的值,结果应该是一个矩阵才清楚。现在我正在使用 for 循环:
m <- c(NULL)
for (a in x) {
for (b in y) {
m <- c(m, c(a, b))
}
}
m <- matrix(m, 3, 4)
但这看起来真的非常非常愚蠢。有人可以提供一种更简单的方法吗?
谢谢。
outer(x, y, f)
# [,1] [,2] [,3]
#[1,] 4 5 6
#[2,] 8 10 12
#[3,] 12 15 18
#[4,] 16 20 24
outer(y, x, f)
# [,1] [,2] [,3] [,4]
#[1,] 4 8 12 16
#[2,] 5 10 15 20
#[3,] 6 12 18 24
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)