LoslegenKostenlos starten

Zeilensummen berechnen

Der zweite identifizierte Flaschenhals war das Berechnen der Zeilensummen.

total <- apply(d, 1, sum)

In der vorherigen Übung hast du das zugrunde liegende Objekt in eine Matrix umgewandelt. Dadurch wird der oben gezeigte apply‑Aufruf drei Mal schneller. Aber es gibt noch eine weitere Optimierung: Ersetze apply() durch rowSums().

Diese Übung ist Teil des Kurses

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

Übungsanweisungen

  • Vervollständige die Funktion r_sum() mit rowSums().
  • Verwende die Funktion microbenchmark(), um die Laufzeiten von app() und r_sum() zu vergleichen.

Interaktive praktische Übung

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

# Example data
rolls

# Define the previous solution 
app <- function(x) {
    apply(x, 1, sum)
}

# Define the new solution
r_sum <- function(x) {
    ___(x)
}

# Compare the methods
microbenchmark(
    app_sol = app(rolls),
    r_sum_sol = ___
)
Code bearbeiten und ausführen