Wie variiert die Verarbeitungszeit je nach Datenmenge?
Wenn du alle Elemente von zwei Datensätzen verarbeitest und einer der Datensätze größer ist, dauert die Verarbeitung des größeren länger. Wichtig ist jedoch: Wie viel länger es dauert, ist nicht immer direkt proportional zur Größe. Das heißt, wenn du zwei Datensätze hast und einer doppelt so groß ist wie der andere, ist nicht garantiert, dass der größere doppelt so lange zur Verarbeitung braucht. Es könnte 1,5-mal so lange dauern oder sogar viermal so lange. Das hängt davon ab, welche Operationen zur Verarbeitung verwendet werden.
In dieser Übung verwendest du das Paket microbenchmark, das im Kurs Writing Efficient R Code behandelt wurde.
Hinweis: Zahlen sind in wissenschaftlicher Schreibweise angegeben: $$1e5 = 1 * 10^5 = 100.000$$
Diese Übung ist Teil des Kurses
Skalierbare Datenverarbeitung in R
Anleitung zur Übung
- Lade das Paket
microbenchmark. - Verwende die Funktion
microbenchmark(), um die Sortierzeiten zufälliger Vektoren zu vergleichen. - Rufe
plot()aufmbauf.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Load the microbenchmark package
___
# Compare the timings for sorting different sizes of vector
mb <- ___(
# Sort a random normal vector length 1e5
"1e5" = sort(rnorm(1e5)),
# Sort a random normal vector length 2.5e5
"2.5e5" = sort(rnorm(2.5e5)),
# Sort a random normal vector length 5e5
"5e5" = sort(rnorm(5e5)),
"7.5e5" = sort(rnorm(7.5e5)),
"1e6" = sort(rnorm(1e6)),
times = 10
)
# Plot the resulting benchmark object
___(mb)