Векторизация функции карри в R - PullRequest
0 голосов
/ 20 января 2019

Мне трудно понять, как работает 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))?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...