Von sapply zu vapply
Wie bereits erwähnt, kann vapply()
als solidere Version von sapply()
angesehen werden, weil du die Ausgabe der Funktion, die du anwenden willst, explizit einschränkst. Das Konvertieren der sapply()
-Ausdrücke in deinen eigenen R-Skripten in vapply()
-Ausdrücke ist daher ratsam (und auch gar nicht schwer).
Diese Übung ist Teil des Kurses
R für Fortgeschrittene
Anleitung zur Übung
Konvertiere alle sapply()
-Ausdrücke auf der rechten Seite in ihre vapply()
-Gegenstücke. Du solltest genau dieselben Ergebnisse erhalten – nur auf eine solidere Weise. Du brauchst die Vorlagen numeric(1)
und logical(1)
.
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# temp is already defined in the workspace
# Convert to vapply() expression
sapply(temp, max)
# Convert to vapply() expression
sapply(temp, function(x, y) { mean(x) > y }, y = 5)