NFL & Python: Pull NFL Next Gen Stats

NFL & Python: Pull NFL Next Gen Stats

Introducción y descripción del proyecto

Resumen de la sección: En esta sección, Tim Bryan se presenta y explica que el objetivo del video es mostrar cómo obtener estadísticas avanzadas de la NFL utilizando el paquete NFL Data Pi. Menciona que estas estadísticas proporcionan información interesante sobre aspectos como la separación de los receptores y la velocidad.

Dependencias necesarias para el proyecto

  • Pandas: biblioteca estándar para ciencia de datos.
  • NFL Data Pi: paquete utilizado para extraer las estadísticas de la NFL.
  • Matplotlib: biblioteca utilizada para visualizar los datos.
  • Style library (dentro de Matplotlib): necesario si se desea aplicar estilo a las visualizaciones.

Configuración inicial

  • Se define el año como 2022, ya que los datos comienzan en 2016.
  • Se importa el paquete NFL Data Pi y se abrevia como "NFL" para facilitar su uso posteriormente.
  • Se utiliza la función "import_NGS_data" para importar los datos deseados. El parámetro "stat_type" permite seleccionar entre diferentes tipos de estadísticas, como pases, recepciones o acarreos.

Visualización de los datos disponibles

Resumen de la sección: En esta sección, Tim muestra ejemplos de las estadísticas disponibles utilizando el paquete NFL Data Pi. Destaca algunas métricas interesantes, como el tiempo promedio para lanzar un pase, las yardas aéreas completadas en promedio y las yardas aéreas previstas.

Métricas destacadas

  • Tiempo promedio para lanzar un pase: indica cuánto tiempo tiene el mariscal de campo antes de que los defensores se acerquen.
  • Yardas aéreas completadas en promedio: distancia recorrida por el balón desde el punto de lanzamiento hasta que es atrapado o no.
  • Yardas aéreas previstas en promedio: distancia que se pretende lanzar el balón.
  • Diferencia entre las yardas aéreas completadas y las yardas aéreas previstas.
  • Agresividad (métrica calculada por AWS): no se proporciona una explicación clara sobre esta métrica.

Métricas seleccionadas para analizar

Resumen de la sección: En esta sección, Tim explica las dos métricas que analizará en este video: tiempo promedio para lanzar un pase y porcentaje de completos por encima de lo esperado. Estas métricas permiten evaluar la contribución del equipo ofensivo y los receptores al éxito del mariscal de campo.

Métricas seleccionadas

  • Tiempo promedio para lanzar un pase: indica cuánto tiempo tiene el mariscal de campo antes de ser presionado. Un valor alto sugiere una buena línea ofensiva o movilidad del mariscal.
  • Porcentaje de completos por encima de lo esperado: muestra si los receptores están ayudando al mariscal al atrapar pases difíciles. Un valor alto indica buenos receptores.

Filtrado y visualización de datos

Resumen de la sección: En esta sección, Tim muestra cómo filtrar los datos para obtener solo la información correspondiente a la temporada completa. Luego, utiliza Matplotlib para visualizar las métricas seleccionadas.

Filtrado de datos

  • Se filtra la temporada completa utilizando el valor "week zero" en la columna correspondiente.
  • Se redefine la variable "season" para almacenar los datos filtrados y se reinicia el índice para facilitar su uso posteriormente.

Visualización de datos

  • Se define el diseño de la visualización, especificando el tamaño de la imagen.
  • Se utiliza la función "mean" para calcular el promedio del tiempo promedio para lanzar un pase y del porcentaje de completos por encima de lo esperado.
  • Se muestra en pantalla los valores promedio obtenidos.

Conclusiones finales

Resumen de la sección: En esta sección, Tim resume las conclusiones obtenidas a partir de las estadísticas analizadas. Destaca que, según las métricas utilizadas, los receptores están bajo rindiendo en términos de porcentaje de completos por encima de lo esperado. Sin embargo, recalca que estas estadísticas son calculadas por AWS y pueden interpretarse de diferentes maneras.

Conclusiones

  • Los receptores están atrapando menos pases difíciles de lo esperado, según el porcentaje de completos por encima de lo esperado.
  • Las estadísticas utilizadas son proporcionadas por AWS y deben ser interpretadas con precaución.

Análisis de tiempo promedio de lanzamiento y porcentaje de completación

Resumen de la sección: En esta sección, el presentador explica cómo se va a analizar el tiempo promedio de lanzamiento y el porcentaje de completación para los quarterbacks en la NFL. Se utilizará un enfoque relativo al promedio general para visualizar los datos.

Análisis del tiempo promedio de lanzamiento

  • Se añadirá el tiempo promedio de lanzamiento al conjunto de datos X.
  • Se calculará la diferencia entre el tiempo promedio individual y el promedio general.
  • Esto permitirá centrar el eje en cero y obtener una mejor visualización.

Análisis del porcentaje de completación

  • Se restará el porcentaje esperado del porcentaje real obtenido para cada quarterback.
  • Luego, se calculará la diferencia entre este valor y el promedio general.
  • Esto permitirá centrar el eje en cero y obtener una mejor visualización.

Creación del gráfico

  • Los datos se organizarán en un marco de datos (data frame).
  • Se crearán subgráficos para mostrar los resultados.
  • Se generará un gráfico de dispersión utilizando los datos X e Y definidos anteriormente.
  • Los puntos en el gráfico serán más grandes para facilitar su visualización.

Ajustes visuales

  • Se utilizarán funciones para centrar los ejes en cero.
  • Se eliminarán los bordes del gráfico para una apariencia más limpia.
  • Se establecerán límites y marcas en los ejes X e Y según sea necesario.
  • Se agregarán anotaciones con nombres y años junto a cada punto correspondiente a un quarterback.

Resultados del gráfico

  • El gráfico muestra el tiempo promedio de lanzamiento versus el porcentaje de completación por encima o debajo de lo esperado.
  • La mayoría de los quarterbacks se encuentran cerca del promedio en ambos aspectos.
  • Algunos quarterbacks, como Daniel Jones y Marcus Mariota, tienen mucho más tiempo para lanzar que el promedio.
  • Otros quarterbacks, como Aaron Rodgers, tienen poco tiempo para lanzar pero sus receptores tienen un buen desempeño.
  • Baker Mayfield tiene poco tiempo para lanzar y sus receptores tienen un bajo rendimiento.
  • Justin Fields tiene mucho tiempo para lanzar pero sus receptores también tienen un bajo rendimiento.

Conclusiones y próximos pasos

Resumen de la sección: En esta sección final, el presentador concluye la explicación del gráfico y menciona que seguirá explorando las estadísticas avanzadas en la NFL. También anticipa futuros videos sobre aprendizaje automático (machine learning).

Conclusiones del gráfico

  • El gráfico proporciona información sobre el tiempo promedio de lanzamiento y el porcentaje de completación en relación con las expectativas.
  • Los quarterbacks se dividen en cuatro cuadrantes según su desempeño en ambos aspectos.
  • Los cuadrantes superiores indican más tiempo para lanzar y mejores recepciones.
  • Los cuadrantes inferiores indican menos tiempo para lanzar y peores recepciones.

Próximos pasos

  • El presentador continuará explorando las estadísticas avanzadas en la NFL utilizando datos generados por AWS (Amazon Web Services).
  • Se espera que haya futuros videos sobre aprendizaje automático relacionados con este tema.

Nota: Este resumen se basa únicamente en el contenido del transcript proporcionado y no incluye información adicional.

Video description

GitHub: https://github.com/tbryan2/NFL-Next-Gen-Stats Pull NFL Next Gen Stats w/ Python and visualize. 0:00 Introduction 0:49 Pulling NGS 5:33 Visualizing NGS 7:43 Results and Outro