Измените имя аргумента функции, затем нарисуйте кривую - PullRequest
0 голосов
/ 16 октября 2018

По какой-то причине я не хочу использовать x в качестве имени переменной.

mse <- function(h) {
    h + (1/h)
}

Функция curve в R, по-видимому, требует x в качестве имениаргумент.Так что я делаю

cl <- quote(mse(h))
cl[[2]] <- parse(text = 'x')[[1]]

Теперь это работает

curve(expr = eval(cl, list(x)))

Но следующее не работает, кто-нибудь может помочь объяснить, почему?Спасибо.

curve(expr = function(x){eval(cl)})

1 Ответ

0 голосов
/ 16 октября 2018

Как уже упоминалось @ 李哲源 и @ r2evans, я просто сделаю:

curve(expr = mse(h), xname = 'h')
...