Я относительно новичок в R и пытаюсь понять, почему мой код ниже не работает.
Я использую набор данных рейсов в библиотеке nycflights13. Я хочу иметь возможность написать функцию, которая вычисляет среднее значение переменной, которую я указываю в параметре функции. Например, приведенный ниже код работает нормально:
summarise(group_by(flights, year, month),
avg = mean(dep_delay, na.rm = TRUE))
Однако, когда я пытаюсь поместить это в функцию и вычислить среднее значение arr_delay, я получаю ошибку:
summarise_func <- function(var = dep_delay) {
summarise(group_by(flights, year, month),
avg = mean(var, na.rm = TRUE))
}
summarise_func(var = arr_delay)
Ошибка в среднем (var, na.rm = TRUE): объект 'arr_delay' не найден
Может кто-нибудь, пожалуйста, объясните мне, почему значение параметра var (arr_delay) не передается в функцию и как обойти это?
Я полностью осознаю, что могу просто написать еще один фрагмент кода для вычисления среднего arr_delay, но я пытаюсь выяснить, как работает R.
Спасибо