EmpezarEmpieza gratis

Dividir el conjunto de datos

En un ejercicio anterior, determinaste que el número medio de retuits por tuit es 3.3. En este ejercicio, veremos cuántos tuits están por encima de esa media y cuántos por debajo.

Para ello, primero crearemos un mapper que compruebe si .x está por encima de 3.3. Después rellenaremos por adelantado map_at(), con .at siendo "retweet_count", y .f siendo primero el mapper que hemos creado y, en segundo lugar, la negación de ese mapper.

Ten en cuenta que, desde que se creó este curso, el comportamiento de purrr cambió y, para evitar un conflicto de argumentos entre .f en partial() y .f en map_at(), debes usar el operador de asignación con cuasi-citas, := (a veces conocido como el "operador morsa"). Para este ejercicio, solo necesitas saber que := funciona como =, pero le indica a partial() que el argumento debe pasarse a map_at() en lugar de quedarse para sí mismo.

Una vez creadas estas herramientas, las usaremos sobre el objeto non_rt, que es una extracción de los "tuits originales" del conjunto de datos rstudioconf.

purrr ya está cargado para ti.

Este ejercicio forma parte del curso

Programación funcional intermedia con purrr

Ver curso

Instrucciones del ejercicio

  • Crea mean_above, un mapper que compruebe si .x está por encima de 3.3.

  • Rellena por adelantado dos versiones de map_at(): una con "retweet_count" y mean_above, y otra con "retweet_count" y la negación de mean_above.

  • Aplica estas dos funciones ya predefinidas sobre non_rt y quédate solo con los elementos "retweet_count".

  • Obtén el tamaño de los dos resultados.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Create mean_above, a mapper that tests if .x is over 3.3
mean_above <- ___(~ ___)

# Prefil map_at() with "retweet_count", mean_above for above, 
# and mean_above negation for below
above <- partial(___, .at = "retweet_count", .f := ___ )
below <- partial(___, .at = "retweet_count", .f := ___ )

# Map above() and below() on non_rt, keep the "retweet_count"
ab <- ___(non_rt, ___) %>% ___("retweet_count")
bl <- ___(non_rt, ___) %>% ___("retweet_count")

# Compare the size of both elements
___(ab)
___(bl)
Editar y ejecutar código