Game-Changers-PF / Proyecto-Final

0 stars 0 forks source link

Division de Dataset para analisis de datos #1

Closed redsar6 closed 3 months ago

redsar6 commented 3 months ago

Tablas a revisar Rembert

AnitaPedernera commented 3 months ago

@Valen2690 mira esto

Valen2690 commented 3 months ago

Proceso de exploración de las tablas asignadas

Inactive_players

es una tabla que incluye datos de los jugadores inactivos, no brinda fechas para confirmar en que momento se retiraron; no se debería tener en cuenta debido a que se van a analizar a los jugadores activos para traspasos.

En cuanto a la integridad de los datos, la mayoría de las columnas están validas al 100% a excepción de _firstname, _lastname y _jerseynum.

officials

Esta tabla brinda información acerca de los árbitros de los partidos, los datos están validados al 100% sin presentar error o vacíos.

Teniendo en cuenta la consigna del proyecto relacionada con el rendimiento de los jugadores, los árbitros si pueden afectar el desempeño de los mismos con sus decisiones, fluidez en el juego a la hora de manejar el ritmo del mismo, confianza y estado emocional.

Se propone relacionar esta tabla usando el _gameid y _officialid para analizar como los jugadores con estadísticas de alto rendimiento pueden perder partidos por decisiones arbitrales y realizar una estadística de rendimiento que tenga relación con el arbitraje.

Clave Primaria: official_id Clave Foránea: game_id

draft_history

Los datos de las temporadas se encuentran desde 1947, por lo cual se debe realizar filtro desde el año 2015 hasta el 2023 para analizar un total de 9 temporadas.

En cuanto a la integridad de los datos, la mayoría de la columna de las columnas de las tablas presentan datos validos al 100% a excepción de organization y _organizationtype, las cuales presentan valores vacíos siendo menores al 1%.

Se realiza verificación de los datos vacíos, los cuales resultan siendo dos filas tanto en la columna de organization como _organizationtype; correspondiente a los jugadores Thon Maker de la temporada 2016 y Mitchel Robinson de la temporada de 2018, de los cuales no se tiene información.

Por lo cual se sugieren buscar en otras fuentes esta información, si los jugadores presentan estadísticas de rendimiento.

En cuanto al player_profile_flag (indicador si hay un perfil disponible para el jugador). Determinar si se va a trabajar con un solo valor binario (1 ó 0) o con los dos (1 y 0). Teniendo en cuenta que:
1: indica que hay un perfil disponible para cada jugador. 0: indica que no hay un perfil disponible para el jugador.

Teniendo en cuenta la premisa que los jugadores con un perfil disponible (1) suelen ser mas prominentes o conocidos, lo cual podría indicar su relevancia o éxito en la NBA y que probablemente tengan un perfil mas detallado disponible, lo que puede incluir estadísticas, historial de juego y otros detalles relevantes; se propone trabajar con los jugadores que tienen un perfil 1, puesto que al realizar un conteo de los jugadores que tienen perfil 0 con los filtros aplicados solo se cuenta con 43 de las 536 filas disponibles.

Clave Primaria: person_id Clave Foránea: team_id

mplaza72 commented 3 months ago

GAME

Se rellenaron los valores nulos con 0 en todo el DataFrame y luego se eliminaron las filas que contenian valores nulos en alguna columna relevante. Todas las columnas fueron configuradas con el tipo de dato según la siguiente descripción y análisis que se realizó de cada una: o season_id: Entero (int) si es un identificador numérico de temporada. o team_id_home y team_id_away: Entero (int) si son identificadores numéricos de equipos. o team_abbreviation_home y team_abbreviation_away: Cadena (str) para abreviaturas de equipos. o team_name_home y team_name_away: Cadena (str) para nombres completos de equipos. o game_id: Entero (int) si es un identificador numérico único para cada juego. o game_date: Fecha (datetime) para la fecha del juego. o matchup_home y matchup_away: Cadena (str) para la descripción del enfrentamiento (p. ej., "Team A vs Team B"). o wl_home y wl_away: Cadena (str) para indicar la victoria o derrota del equipo local o visitante. o min: Entero (int) si representa minutos jugados. o fgm_home, fga_home, fg3m_home, fg3a_home, ftm_home, fta_home, oreb_home, dreb_home, reb_home, ast_home, stl_home, blk_home, tov_home, pf_home, pts_home: Entero (int) para estadísticas numéricas como tiros de campo realizados, rebotes, asistencias, etc. o fg_pct_home, fg3_pct_home, ft_pct_home: Decimal (float) para porcentajes de tiros de campo, tiros de tres puntos y tiros libres. o plus_minus_home y plus_minus_away: Entero (int) para el diferencial de puntos del equipo local y visitante. o video_available_home y video_available_away: Booleano (bool) si indica la disponibilidad de video para el equipo local y visitante. o season_type: Cadena (str) para el tipo de temporada (p. ej., "Regular Season", "Playoffs").

ESTADISTICAS Y METRICAS DE GAME

Estadísticas de Juego: calcular estadísticas básicas de cada juego, como el puntaje final (pts_home y pts_away), diferencial de puntos (plus_minus_home y plus_minus_away), y tiempo de juego (min). Porcentaje de Tiros: Calcular el porcentaje de tiros de campo (fg_pct_home, fg_pct_away), de triples (fg3_pct_home, fg3_pct_away), y de tiros libres (ft_pct_home, ft_pct_away) para cada equipo. Rebotes y Estadísticas Defensivas: Analizar estadísticas de rebotes (reb_home, reb_away), tanto ofensivos como defensivos (oreb_home, oreb_away, dreb_home, dreb_away). Estadísticas de Jugadores: Derivar estadísticas agregadas de jugadores individuales en cada juego, como puntos anotados (pts_home, pts_away), asistencias (ast_home, ast_away), robos (stl_home, stl_away), y bloqueos (blk_home, blk_away). Eficiencia y Rendimiento: Calcular el rendimiento por minuto jugado, efectividad en tiros, y ratio de asistencias a pérdidas (ast_home / tov_home, ast_away / tov_away).

TEAM_DETAILS

Se rellenaron los valores nulos con 0 en todo el DataFrame y luego se eliminaron las filas que contenian valores nulos en alguna columna relevante. Todas las columnas fueron configuradas con el tipo de dato según la siguiente descripción y análisis que se realizó de cada una: team_id: Entero (int) abbreviation: Cadena (str) nickname: Cadena (str) yearfounded: Entero (int) city: Cadena (str) arena: Cadena (str) arenacapacity: Entero (int) owner: Cadena (str) generalmanager: Cadena (str) headcoach: Cadena (str) dleagueaffiliation: Cadena (str) facebook: Cadena (str) instagram: Cadena (str) twitter: Cadena (str)

ESTADISTICAS Y METRICAS DE TEAM_DETAILS

Capacidad y Ubicación del Estadio: Estudiar la capacidad del estadio (arenacapacity) y la ubicación del equipo (city, arena). Redes Sociales y Presencia Digital: Analizar la presencia en redes sociales como Facebook, Instagram, y Twitter (facebook, instagram, twitter). Gestión del Equipo: Estudiar la propiedad (owner), gerencia general (generalmanager), y entrenador principal (headcoach) del equipo. Afiliación con la G-League: Verificar la afiliación del equipo con la G-League (dleagueaffiliation), si es relevante. Historia y Fundación: Analizar el año de fundación (yearfounded) y cualquier otra información histórica relevante.

PLAYER

Se rellenaron los valores nulos con 0 en todo el DataFrame y luego se eliminaron las filas que contenian valores nulos en alguna columna relevante. Todas las columnas fueron configuradas con el tipo de dato según la siguiente descripción y análisis que se realizó de cada una: id: Entero (int) full_name: Cadena (str) first_name: Cadena (str) last_name: Cadena (str) is_active: Booleano (bool) o Entero (int) si es binario (0 o 1)

ESTADISTICAS Y METRICAS DE PLAYER

Cantidad de Jugadores Activos e Inactivos: Contar cuántos jugadores están activos e inactivos

AnitaPedernera commented 3 months ago

•draft_combine_stats •No existen datos del 2016 ni 2021. Revisar si impacta en los datos de jugadores. •Filtrar desde la season 2015 y hasta season 2021 inclusive. 2022 ya es una temporada fuera de los datos actuales

Columnas relevantes: season: Temporada en la que el jugador fue drafteado player_id: Identificación única del jugador position: Posición en la que juega el jugador height_w_shoes: Altura del jugador con zapatos (en centímetros o metros) height_w_shoes_ft_in: Altura del jugador con zapatos (en pies y pulgadas) weight: Peso del jugador (en kilogramos o libras) standing_vertical_leap: Altura del salto vertical desde una posición estática (en centímetros o pulgadas) max_vertical_leap: Altura máxima del salto vertical con impulso (en centímetros o pulgadas)

Información que se eliminaría en razón de que esta información esta en la tabla del jugador first_name: Primer nombre del jugador. last_name: Apellido del jugador. *player_name: Nombre completo del jugador.

Información que se tuvo al momento de draftear al jugador, pero al ser un jugador que ya cuenta con una temporada en nba, se cuenta con registros actuales que respaldan el rendimiento actual en competencia, por lo que esta información sería irrelevantepara este análisis. Se eliminarían estas columnas: height_wo_shoes: Altura del jugador sin zapatos (en centímetros o metros). height_wo_shoes_ft_in: Altura del jugador sin zapatos (en pies y pulgadas). wingspan: Envergadura del jugador (en centímetros o metros). wingspan_ft_in: Envergadura del jugador (en pies y pulgadas). standing_reach: Alcance en posición de pie del jugador (en centímetros o metros). standing_reach_ft_in: Alcance en posición de pie del jugador (en pies y pulgadas). body_fat_pct: Porcentaje de grasa corporal del jugador. hand_length: Longitud de la mano del jugador (en centímetros o metros). hand_width: Ancho de la mano del jugador (en centímetros o metros). lane_agility_time: Tiempo en segundos para completar el "Lane Agility Drill". modified_lane_agility_time: Tiempo modificado en segundos para completar una versión alternativa del "Lane Agility Drill". three_quarter_sprint: Tiempo en segundos para completar el sprint de tres cuartos de cancha. bench_press: Número de repeticiones de press de banca con un peso estándar (generalmente 185 libras). spot_fifteen_corner_left: Porcentaje de tiros acertados desde la esquina izquierda a 15 pies del aro. spot_fifteen_break_left: Porcentaje de tiros acertados desde el "break" izquierdo a 15 pies del aro. spot_fifteen_top_key: Porcentaje de tiros acertados desde la parte superior de la llave a 15 pies del aro. spot_fifteen_break_right: Porcentaje de tiros acertados desde el "break" derecho a 15 pies del aro. spot_fifteen_corner_right: Porcentaje de tiros acertados desde la esquina derecha a 15 pies del aro. spot_college_corner_left: Porcentaje de tiros acertados desde la esquina izquierda a distancia de tiro universitario. spot_college_break_left: Porcentaje de tiros acertados desde el "break" izquierdo a distancia de tiro universitario. spot_college_top_key: Porcentaje de tiros acertados desde la parte superior de la llave a distancia de tiro universitario. spot_college_break_right: Porcentaje de tiros acertados desde el "break" derecho a distancia de tiro universitario. spot_college_corner_right: Porcentaje de tiros acertados desde la esquina derecha a distancia de tiro universitario. spot_nba_corner_left: Porcentaje de tiros acertados desde la esquina izquierda a distancia de tiro de la NBA. spot_nba_break_left: Porcentaje de tiros acertados desde el "break" izquierdo a distancia de tiro de la NBA. spot_nba_top_key: Porcentaje de tiros acertados desde la parte superior de la llave a distancia de tiro de la NBA. spot_nba_break_right: Porcentaje de tiros acertados desde el "break" derecho a distancia de tiro de la NBA. spot_nba_corner_right: Porcentaje de tiros acertados desde la esquina derecha a distancia de tiro de la NBA. off_drib_fifteen_break_left: Porcentaje de tiros acertados desde el "break" izquierdo a 15 pies del aro después de driblar. off_drib_fifteen_top_key: Porcentaje de tiros acertados desde la parte superior de la llave a 15 pies del aro después de driblar. off_drib_fifteen_break_right: Porcentaje de tiros acertados desde el "break" derecho a 15 pies del aro después de driblar. off_drib_college_break_left: Porcentaje de tiros acertados desde el "break" izquierdo a distancia de tiro universitario después de driblar. off_drib_college_top_key: Porcentaje de tiros acertados desde la parte superior de la llave a distancia de tiro universitario después de driblar. off_drib_college_break_right: Porcentaje de tiros acertados desde el "break" derecho a distancia de tiro universitario después de driblar. on_move_fifteen: Porcentaje de tiros acertados en movimiento a 15 pies del aro. on_move_college: Porcentaje de tiros acertados en movimiento a distancia de tiro universitario.

•player_average_stats_2015_2021 Columnas PLAYER_ID: Identificador único para cada jugador (entero). Este lo filtraremos de acuerdo a que este activo el jugador. TEAM_ID: Identificador único para el equipo del jugador (entero) AGE: Edad del jugador durante la temporada (decimal) GP: Número de partidos jugados (entero) W: Número de victorias para el equipo del jugador (entero) L: Número de derrotas para el equipo del jugador (entero) W_PCT: Porcentaje de victorias del equipo del jugador (decimal) MIN: Promedio de minutos jugados por partido (decimal) FGM: Promedio de tiros de campo realizados por partido (entero) FGA: Promedio de tiros de campo intentados por partido (entero) FG_PCT: Porcentaje de tiros de campo (decimal) FG3M: Promedio de triples realizados por partido (entero) FG3A: Promedio de triples intentados por partido (entero) FG3_PCT: Porcentaje de triples (decimal FTM: Promedio de tiros libres realizados por partido (entro) FTA: Promedio de tiros libres intentados por partido (entero) FT_PCT: Porcentaje de tiros libres (decimal) OREB: Promedio de rebotes ofensivos por partido (entero) DREB: Promedio de rebotes defensivos por partido (entero) REB: Promedio de rebotes totales por partido (entero AST: Promedio de asistencias por partido (entero) TOV: Promedio de pérdidas de balón por partido (entero) STL: Promedio de robos de balón por partido (entero). BLK: Promedio de tapones por partido (entero) BLKA: Promedio de tapones recibidos por partido (entero) PF: Promedio de faltas personales por partido (entero) PFD: Promedio de faltas ofensivas sacadas por partido (entero) PTS: Promedio de puntos por partido (entero) PLUS_MINUS: Valoración plus-minus (entero) NBA_FANTASY_PTS: Promedio de puntos de fantasía por partido (decimal) DD2: Dobles-dobles (partidos con 10+ puntos y rebotes) (entero TD3: Triples-dobles (partidos con 10+ puntos, rebotes y asistencias) (entero) GP_RANK y FGM_RANK: Clasificación del jugador en esa estadística específica en comparación con otros jugadores de la liga (entero). SEASON: Año de la temporada (por ejemplo, "2023-2024") (cadena de texto). Se normaliza este dato y se pasa a tipo entero. SEASON_TYPE: Tipo de temporada Temporada regular o Playoffs (cadena de texto)

Eliminar: PLAYER_NAME: Nombre completo del jugador NICKNAME: Apodo del jugador, si está disponible id: Otro posible identificador único para el jugador full_name: Nombre completo del jugador, que puede incluir el segundo nombre o las iniciales (cadena de texto) TEAM_ABBREVIATION: Abreviatura del equipo del jugador WNBA_FANTASY_PTS: Promedio de puntos de fantasía por partido