CommencerCommencer gratuitement

Calcul des sommes par ligne

Le deuxième goulot d’étranglement identifié concernait le calcul des sommes par ligne.

total <- apply(d, 1, sum)

Dans l’exercice précédent, vous avez converti l’objet sous-jacent en matrice. Cela rend l’opération apply ci-dessus trois fois plus rapide. Mais vous pouvez aller plus loin : remplacez apply() par rowSums().

Cet exercice fait partie du cours

Écrire du code R efficace

Afficher le cours

Instructions

  • Complétez la fonction r_sum() en utilisant rowSums().
  • Utilisez la fonction microbenchmark() pour comparer les temps d’exécution de app() et r_sum().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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 = ___
)
Modifier et exécuter le code