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
Instrucciones del ejercicio
Crea
mean_above, un mapper que compruebe si.xestá por encima de3.3.Rellena por adelantado dos versiones de
map_at(): una con"retweet_count"ymean_above, y otra con"retweet_count"y la negación demean_above.Aplica estas dos funciones ya predefinidas sobre
non_rty 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)