Повернення метаданих
Інколи потрібно повернути з функції кілька речей, але результат має мати певний клас (наприклад, датафрейм або числовий вектор), тож повертати список не підходить. Таке часто трапляється, коли є сам результат і метадані про нього. (Метадані — це «дані про дані». Наприклад, це може бути файл, з якого завантажено набір даних, ім'я користувача, який створив змінну, або кількість ітерацій, потрібних алгоритму для збіжності.)
У такому разі можна зберігати метадані в атрибутах. Нагадаємо, що синтаксис присвоєння атрибутів такий.
attr(object, "attribute_name") <- attribute_value
Ця вправа є частиною курсу
Вступ до написання функцій в R
Інструкції до вправи
- Оновіть
pipeable_plot(), щоб результат мав атрибут з назвою"formula"і значеннямformula. plt_dist_vs_speed, який ви створили раніше, показано. Перегляньте його оновлену структуру.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
pipeable_plot <- function(data, formula) {
plot(formula, data)
# Add a "formula" attribute to data
___ <- ___
invisible(data)
}
# From previous exercise
plt_dist_vs_speed <- cars %>%
pipeable_plot(dist ~ speed)
# Examine the structure of the result
___