LoslegenKostenlos loslegen

Metadaten zurückgeben

Manchmal möchtest du mehrere Dinge aus einer Funktion zurückgeben, aber das Ergebnis soll eine bestimmte Klasse haben (zum Beispiel ein Data Frame oder ein numerischer Vektor). Dann ist es nicht passend, eine Liste zurückzugeben. Das ist typisch, wenn du ein Ergebnis plus Metadaten über dieses Ergebnis hast. (Metadaten sind „Daten über Daten“. Zum Beispiel die Datei, aus der ein Datensatz geladen wurde, der Benutzername der Person, die die Variable erstellt hat, oder die Anzahl der Iterationen, bis ein Algorithmus konvergiert.)

In diesem Fall kannst du die Metadaten in Attributen speichern. Zur Erinnerung: Die Syntax zum Zuweisen von Attributen lautet:

attr(object, "attribute_name") <- attribute_value

Diese Übung ist Teil des Kurses

Einführung in das Schreiben von Funktionen in R

Kurs anzeigen

Anleitung zur Übung

  • Aktualisiere pipeable_plot(), sodass das Ergebnis ein Attribut namens "formula" mit dem Wert von formula erhält.
  • plt_dist_vs_speed, das du zuvor erstellt hast, ist angezeigt. Untersuche die aktualisierte Struktur.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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
___
Code bearbeiten und ausführen