ПочатиПочніть безкоштовно

Створення узагальнювальної функції

Ви можете створювати власні функції S3. Перший крок — написати узагальнювач (generic). Зазвичай це однорядкова функція, яка викликає UseMethod() (docs), передаючи свою назву як рядок.

Перший аргумент узагальнювача S3 зазвичай називають x, хоча це не обов'язково. Також варто додати аргумент ... ("ellipsis", або «три крапки»), щоб за потреби передавати аргументи від одного методу до іншого.

Загалом структура узагальнювача S3 виглядає так:

an_s3_generic <- function(x, maybe = "some", other = "arguments", ...) {
  UseMethod("an_s3_generic")
}

Ця вправа є частиною курсу

Об'єктно-орієнтоване програмування з S3 та R6 в R

Переглянути курс

Інструкції до вправи

  • Визначте узагальнювальну функцію S3 для обчислення кількості елементів в об'єкті x.
    • Присвойте цю function до get_n_elements.
    • Вона має мати аргументи x та ....
    • Тіло функції має викликати UseMethod().

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# Create get_n_elements
get_n_elements <- ___(___, ___)
{
  ___("___")
}
Редагувати та запускати код