向量化R中的咖喱函数

时间:2019-01-20 15:26:54

标签: r

我在理解R的工作方式时遇到了麻烦,而且我开始认为它不起作用。

我使用的是咖喱函数g,我想对其向量化并获得多个值。我的第一个尝试是使h1无效。但是h2确实可以,但是我不明白为什么。

# Example function
f <- function(a, b) { return(prod(a, b)) }

# Curried function
g <- Curry(f, b=2)

# Vectorize functions
h1 <- Vectorize(g)
h2 <- Vectorize(function(x) return(g(x)))

# Result values
h1(c(1,2,3)) # returns unexpected result 12
h2(c(1,2,3)) # returns expected result c(2, 4, 6)

为什么在g内包裹function(x) return(g(x))有用?

0 个答案:

没有答案