LoslegenKostenlos starten

Eine generische Funktion erstellen

Du kannst eigene S3-Funktionen erstellen. Der erste Schritt ist, die generische Funktion zu schreiben. Das ist typischerweise eine einzeilige Funktion, die UseMethod() (Docs) aufruft und ihren Namen als String übergibt.

Das erste Argument einer S3-Generischen heißt üblicherweise x, auch wenn das nicht zwingend ist. Es ist außerdem gute Praxis, ein ...-Argument ("Ellipsis" oder „dot-dot-dot“) aufzunehmen, falls Argumente von einer Methode an eine andere weitergereicht werden müssen.

Insgesamt sieht die Struktur einer S3-Generischen so aus.

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

Diese Übung ist Teil des Kurses

<Kurs>Objektorientierte Programmierung mit S3 und R6 in R</Kurs>
Kurs ansehen

Übungsanweisungen

  • Definiere eine S3-generische Funktion, um die Anzahl der Elemente in einem Objekt x zu berechnen.
    • Weisen die function get_n_elements zu.
    • Sie sollte die Argumente x und ... haben.
    • Der Funktionskörper sollte UseMethod() aufrufen.

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# Create get_n_elements
get_n_elements <- ___(___, ___)
{
  ___("___")
}
Code bearbeiten und ausführen