我有一个数据框,其中包含年份,乘客数据和来自的国家/地区的值。该国家对数据框架的看法仍然存在同样的想法。
我试图绘制一个箱线图。国家:"美国"在x轴上,所有年份的乘客数据显示在y轴上。
但我得到:AttributeError:' Series'对象没有属性' boxplot'
from matplotlib import pyplot as plt
import pandas as pd
df = pd.read_csv('CityPairs.csv')
filt = (df.Country == 'USA')
df = df[filt]
reqcol = ['Year', 'Country', 'Passengers_Total']
df = df[reqcol]
groupbyCountry = df.groupby(['Year', 'Country'])['Passengers_Total'].sum()
groupbyCountry
groupbyCountry.boxplot(column = 'Passengers_Total', by = 'Country')
任何帮助将不胜感激
答案 0 :(得分:1)
as_index=True
使用reset_index
或参数DataFrame
:
groupbyCountry = df.groupby(['Year', 'Country'])['Passengers_Total'].sum().reset_index()
或者:
groupbyCountry = df.groupby(['Year', 'Country'], as_index=False)['Passengers_Total'].sum()
如果只绘制一个类别(USA
),则可以编码简化:
groupbyCountry.boxplot(column = 'Passengers_Total')