我有一个数据框,其中包含年份,旅客数据和其来源国家/地区的值。该国家/地区在数据框架方面保持不变。
我正在尝试绘制箱线图。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')
任何帮助将不胜感激
用途reset_index
或参数as_index=True
用于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')
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句