LoslegenKostenlos starten

Ändere den Data Frame in eine Matrix

Eine der Codezeilen, die profvis hervorgehoben hat, war die, in der wir die möglichen Würfelwürfe erzeugt und die Ergebnisse in einem Data Frame gespeichert haben:

df <- data.frame(d1 = sample(1:6, 3, replace = TRUE),
                d2 = sample(1:6, 3, replace = TRUE))

Diesen Code können wir mit zwei Verbesserungen optimieren:

  • Wechsel vom Data Frame zu einer Matrix
  • Erzeuge die 6 Würfelwürfe in einem einzigen Schritt

Das ergibt

m <- matrix(sample(1:6, 6, replace = TRUE), ncol = 2)

Diese Übung ist Teil des Kurses

<Kurs>Effizient R-Code schreiben</Kurs>
Kurs ansehen

Übungsanweisungen

  • Lies und verstehe die Data-Frame-Lösung d().
  • Vervollständige die Matrix-Lösung m().
    • m() soll eine matrix mit 6 Elementen und 2 Spalten erstellen.
  • Verwende die Funktion microbenchmark(), um die Laufzeiten von d() und m() zu vergleichen.

Interaktive praktische Übung

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

# Load the microbenchmark package
___

# The previous data frame solution is defined
# d() Simulates 6 dices rolls
d <- function() {
  data.frame(
    d1 = sample(1:6, 3, replace = TRUE),
    d2 = sample(1:6, 3, replace = TRUE)
  )
}

# Complete the matrix solution
m <- function() {
  ___(sample(1:6, ___, replace = TRUE), ___)
}

# Use microbenchmark to time m() and d()
___(
 data.frame_solution = d(),
 matrix_solution     = ___
)
Code bearbeiten und ausführen