Forums
Saludos a todos,
no consigo entender cómo funciona el método pie de un dataframe pandas. Para poner un ejemplo sencillo, quiero mostrar los gráficos de tarta de las columnas numéricas del dataset "tips" de pandas. El código es éste:
tips.select_dtypes(np.number).plot.pie(subplots = True)
plt.show()
Pero el resultado es algo súper raro, como si cada valor tuviera su propio sector en el gráfico:
¿Alguien sabe el motivo? ¿Cómo lo puedo solucionar?
Gracias
Pedro
Hola Pedro, El hecho es que…
Hola Pedro,
El hecho es que estás alimentando tus gráficos de tarta con una lista inmensa de valores, y todos ellos ocupan su propio sector en el círculo. Lo primero que deberías hacer es confirmar qué deseas hacer ¿calcular el valor medio de cada columna numérica? ¿contar el número de valores? (esto último te devolverá el mismo número para todas las columnas). En todo caso, si aplicas una función de agregación a las columnas vas a obtener un único valor, lo que no parece que sea lo que buscas. Imagino que lo que quieres es aplicar una función de agregación tras haber segmentado tus datos con respecto a algún criterio. Por ejemplo, una idea puede ser querer mostrar el valor medio (de cada columna numérica) por día, para lo que usamos el método .groupby() del dataframe. Uso el mismo dataframe que tú:
tips = sns.load_dataset("tips")
g = tips.groupby(by = "day").mean()
g
Ahora, si llevamos este dataframe a un gráfico de tartas, cada círculo se dividirá en cuatro sectores (pues tenemos cuatro datos por columna):
g.plot.pie(subplots = True, figsize = (14, 8))
plt.show()
(aunque en este caso los tres gráficos parecen muy parecidos pues las proporciones son casi las mismas).
Dime si era esto lo que querías, por favor.
Un saludo
Daniel Burrueco
Muchas gracias, ya me queda…
Muchas gracias, ya me queda claro. Parece evidente que ni siquiera sabía lo que quería hacer (jajaja). Sí, tenía en mente una agrupación de este tipo para aplicar después una función de agregación.
Gracias de nuevo
Pedro Castelo