По сути, я хочу создать функцию add_trend
, которая будет привязана к исходному набору данных.Однако я хочу сделать это с помощью выражения.Например, .t
= линейный тренд, .t + .t^2
= квадратичный тренд.
.data <- tibble::tibble(
x = rnorm(100),
y = rnorm(100))
add_trend <- function(.data, .f = NULL) {
.t <- 1:NROW(.data)
.expr <- quote(.f)
eval(.expr)
}
add_trend(.data, .t^2)
#> Error in eval(.expr): object '.t' not found
Создано в 2019-03-07 пакетом Представить (v0.2.1)
Это должно что-то делать ссреда, в которой он оценивается.Если я сохраню .t
в Global_Env
, то функция сработает, но когда она будет выполнена внутри функции, появится вышеуказанная ошибка.Любая помощь будет принята с благодарностью.