Calcular una media de cierre
Ahora que has explorado algunas tendencias en tus datos de los Red Sox, quieres generar algunos indicadores útiles. En este ejercicio, vas a calcular la media de victorias/derrotas del equipo al final de cada temporada. En términos financieros, puedes pensar en esto como el valor del equipo al cierre de la temporada.
Para calcular una media de cierre de victorias/derrotas, necesitarás combinar algunos de los comandos usados en capítulos anteriores.
Primero, identificarás las victorias según la puntuación de cada partido. Puedes hacerlo con un sencillo comando ifelse() y sabiendo que los Red Sox ganan cada partido en el que anotan más puntos que el equipo rival.
Segundo, identificarás la fecha del último partido de cada temporada usando endpoints(). Este comando identifica la última fecha en tu objeto dentro de determinados periodos.
Por último, para calcular la media de victorias/derrotas al cierre de cada temporada, simplemente usa period.apply() sobre la columna win_loss de tus datos, especificando las fechas de close como índice y mean como función.
El objeto redsox_xts está disponible en tu área de trabajo.
Este ejercicio forma parte del curso
Estudio de caso: Análisis de series temporales de una ciudad en R
Instrucciones del ejercicio
- Usa
ifelsepara calcularwin_loss, codificada como1siboston_scorees mayor queopponent_scorey0en caso contrario. - Usa
endpoints()para identificar la fecha del último partido de cada temporada. Como las temporadas de béisbol están contenidas en un solo año, puedes especificar el argumentooncomo"years"para obtener el partido final de cada año. Guarda estas fechas comoclose. - Usa
period.apply()para calcular la media de victorias/derrotas al cierre de la temporada. Especifica la columnawin_lossde tus datosredsox_xts, las fechasclosecomo periodo ymeancomo función.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Generate a new variable coding for red sox wins
redsox_xts$win_loss <- ifelse(redsox_xts$___ > redsox_xts$___, 1, 0)
# Identify the date of the last game each season
close <- endpoints(___, on = "___")
# Calculate average win/loss record at the end of each season
period.apply(redsox_xts[, "___"], ___, ___)