velocidad de movement_re reacción de
age edad gk_speed real_face cara real
portero actions movimiento
velocidad de
attacking_cros cruce de goalkeeping_di salto de movement_spr release_clause cláusula de
carrera de
sing ataque ving portero int_speed _eur liberación
movimiento
número de
attacking_finis acabado de goalkeeping_h manejo de nation_jersey_
camiseta de la shooting tiroteo
hing ataque andling portero number
nación
precisión de
attacking_hea goalkeeping_ki patada de nation_positio posición de
cabeza de short_name nombre corto
ding_ accuracy cking portero n país
ataque
habilidad de
attacking_shor ataque pase goalkeeping_p posicionamient skill_ball_contr
nationality nacionalidad control de
t_passing corto ositioning o de la portería ol
balón
attacking_volle voleas de goalkeeping_r habilidad de
overall en general skill_curve
ys ataque eflexes curva
habilidad de
body_type tipo de cuerpo height_cm altura pace paso skill_dribbling
dribleo
international_r skill_fk_accura habilidad de
club club reputación passing pase
eputation cy precisión
contract_valid contrato válido skill_long_pass habilidad de
joined unido physic físico
_until hasta ing pase largo
player_positio posición del habilidad de
defending defensa loaned_from préstamo de skill_moves
ns jugador movimiento
defending_ma defensa nombre etiquetas de
long_name player_tags sofifa_id id
rking marcando completo jugador
placa número de
defending_slidi mentality_aggr agresión rasgos del team_jersey_n
deslizante player_traits camiseta del
ng_tackle ession mental jugador umber
defensiva equipo
placaje
defending_sta mentality_com compostura posición en el
defensivo de player_url url del jugador team_position
nding_tackle posure mental equipo
pie
fecha de mentality_inte
mentalidad de
dob potential potencia value_eur valor en euro
nacimiento rceptions intercepción
mentality_pen
mentalidad de power_jumpin potencia de
dribbling dribleo wage_eur salario
alties penales g salto
mentality_posi
mentalidad de power_long_s potencia
gk_diving portero buceo weak_foot pie débil
tioning penales hots disparos largos
mentalidad de
manejo del mentality_visio power_shot_p potencia de
gk_handling posicionamient weight_kg peso
portero n ower disparo
o
patada del movement_ac mentalidad de power_stamin poder de ritmo de
gk_kicking work_rate
portero celeration aceleración a resistencia trabajo
posicionamient movement_agi power_strengt poder de ls, rs, lf, st, lw, cf, rf, cam, lcm,
gk_positioning agilidad mental
o del portero lity h fuerza rm, rw, ram, cm, lwb, lam, lm,
reflejo del movement_bal balance rcm, ldm, cdm, rwb, lcb, rcb,
gk_reflexes preferred_foot pie preferido
portero ance mental rdm, lb, cb, rb
LIBRERÍAS
Un científico de datos invierte el 60% en la manipulación y limpieza de datos ya que proviene de diferentes fuentes de datos.
Para instalar pandas, ir a CMD y escribir el comando:
▪ pip install pandas
▪ py -m pip install pandas
Para instalar matplotlib, ir a CMD y escribir el comando:
▪ pip install matplotlib
En el siguiente link podrás descargar archivos .csv, para ello crear una cuenta usando correo de Gmail
[Link]
#Importando librerías
import pandas as pd
#Cargar archivo .csv
players = pd.read_csv('players_20.csv')
#players = pd.read_csv("players_20.csv",encoding = "ISO-8859-1")
print(players)
#Mostrando los primeros quince 10 últimos registros
print([Link](15))
print([Link](10))
#Mostrando cantidad de filas y columnas tiene el .csv
print([Link])
#Mostrando nombres de las columnas
print([Link])
#Mostrando tipos de datos de las columnas
print([Link])
#Mostrando resumen estadístico
print([Link]())
#Mostrando solo 4 columnas y su resumen estadístico
print(players[["short_name","nationality","player_positions","skill_dribbling"]].head())
print(players[["short_name","nationality","player_positions","skill_dribbling"]].describe())
print(players[["skill_moves","age","shooting","skill_dribbling"]].describe())
#Mostrando promedio de campo age’
print(players['age'].mean())
#Creando una variable y copiar algunas columnas del .csv original
players_copy = players[['short_name','age','overall','height_cm','value_eur','nationality','club','potential','wage_eur']]
print(players_copy.head(10))
#Ordenando de mayor a menor por campo ‘age’
players_copy = players[['age',"short_name","nationality","player_positions","skill_dribbling"]]
print(players_copy.sort_values(by=['age'],ascending=[False]).head(10))
columns = ['age',"short_name","nationality","player_positions","skill_dribbling"]
players_copy = players[columns]
print(players_copy.sort_values(by=['age'],ascending=[False]).head(10))
#Creando variables y filtro solo a los jugadores de Barcelona FC y Real Madrid
barcelona_fc = players_copy[players_copy['club']=='FC Barcelona']
print(barcelona_fc.head(20))
real_madrid = players_copy[players_copy['club']=='Real Madrid']
print(real_madrid.head(20))
#Mostrando estadística de salarios del R.M y Barcelona
print(real_madrid['wage_eur'].describe())
print(barcelona_fc['wage_eur'].describe())
#Mostrando estadístico comparativo por columna ‘overall’ de ambos clubes
print(real_madrid['overall'].describe())
print(barcelona_fc['overall'].describe())
#Mostrando estadístico de cuantos ganan los jugadores (values_eur) del real madrid
print(real_madrid['value_eur'].describe())
#Filtrando y mostrando los jugadores del real Madrid que ganan más de 35000000 euros
rm_salarios = real_madrid[real_madrid['value_eur']>35000000]
print(rm_salarios)
print(real_madrid[real_madrid['value_eur']>35000000])
#Filtrando y mostrando los jugadores que ganan más de 80000000
mas_valiosos =players_copy[players_copy['value_eur']>80000000]
print(mas_valiosos)
#Filtrando y mostrando jugadores con dribleo mayor a 90 y número de camiseta 10 (2 filtros simultáneos)
players_top = players[(players['dribbling']>90)&(players['team_jersey_number']==10)]
print(players_top)
#Mostrando los 10 jugadores con los valores defensivos más altos
print([Link](10,'defending'))
#Mostrando los 12 jugadores con los valores de potencia más bajos
print([Link](12,'potential'))
#Resumen de conteo por club, por nacionalidad
print(players['club'].value_counts())
print(players['nationality'].value_counts())
#Suma de valor defensa por nacionalidad
print([Link](by = "nationality")["defending"].sum())
#Conteo de posición de equipo de Barcelona ó Real Madrid
mix = players[(players['club']=='FC Barcelona') | (players['club']=='Real Madrid')]
print(mix['team_position'].value_counts())
print([Link](by = "team_position")["team_position"].count())
#Mostrar filas que cumplan un criterio
print(realmadrid[[Link] > 88])
print(realmadrid[[Link] > 30])
print(realmadrid[realmadrid.weight_kg > 83])
GRÁFICOS
#Importando librerías
import pandas as pd
import [Link] as plt
#Gráfico comparativo entre clubes
[Link]()
[Link](121)
[Link](real_madrid['overall'])
[Link]('Overfall')
[Link]('Real Madrid')
[Link](True)
[Link](122)
[Link](barcelona_fc['overall'])
[Link]('Barcelona')
[Link](True)
[Link]()
#Mostrando gráfico de salarios de los jugadores del Real Madrid
[Link](real_madrid['value_eur'])
[Link]('Valor en millones de Euros')
[Link]('Cantidad de jugadores')
[Link]('RESUMEN DE SALARIOS DE JUGADORES DEL R.M')
[Link]()
#Mostrando gráfico de edades (‘age’) y cuánto ganan (‘value_eur’)
players_copy.plot(kind='scatter',x='age',y='value_eur')
[Link]()
#Mostrando gráfico de potencia de disparos a larga distancia
[Link](fifa['power_long_shots'])
[Link]('Potencia de disparo larga distancia')
[Link]('Cantidad de jugadores')
[Link]('RESUMEN DE POTENCIA TIRO')
[Link]()
#
[Link](players_copy['power_jumping'])
[Link]('Potencia en salto')
[Link]('Cantidad de jugadores')
[Link]('RESUMEN POTENCIA EN SALTO')
[Link]()
TUTORIALES
Curso completo
[Link]
Conociendo pandas
[Link]
Limpieza de datos
[Link]
[Link]