ComenzarEmpieza gratis

Calcular sumas por fila

El segundo cuello de botella identificado fue calcular las sumas por fila.

total <- apply(d, 1, sum)

En el ejercicio anterior cambiaste el objeto subyacente a una matriz. Esto hace que la operación apply anterior sea tres veces más rápida. Pero aún puedes aplicar otra optimización: sustituye apply() por rowSums().

Este ejercicio forma parte del curso

Escribir código R eficiente

Ver curso

Instrucciones del ejercicio

  • Completa la función r_sum() usando rowSums().
  • Utiliza la función microbenchmark() para comparar los tiempos de app() y r_sum().

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# 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 = ___
)
Editar y ejecutar código