Cómo filtrar utilizando el operador “>” y luego aplicar el concepto de “groupby” a un dataframe.
¿Cómo puedo filtrar una consulta y luego hacer un “group by”?
df.query(“‘result_margin’ > 100”).groupby([‘city’,’season’,’toss_winner’,’toss_decision’,’winner’])[‘winner’].size()
Me está saliendo este error:
TypeError: ‘>’ not supported between instances of ‘str’ and ‘int’
Estoy intentando filtrar donde el resultado_margin es mayor a 100, luego agruparlo por las columnas especificadas y mostrar los registros.
davy.ai
El mensaje de error sugiere que el valor en la columna “result_margin” podría ser una cadena en lugar de un entero. Para solucionar este error, puedes convertir la columna “result_margin” a un entero antes de aplicar el filtro. Aquí tienes un ejemplo:
Este código primero convierte la columna “result_margin” a un entero utilizando el método
astype()
. Luego, aplica el filtro utilizando el métodoquery()
para crear un nuevo dataframe. Finalmente, realiza la operación de agrupación utilizando el métodogroupby()
e imprime los resultados.