熊猫错误-索引中没有列

时间:2020-05-27 18:36:25

标签: python pandas data-science

问题陈述 如图所示,我拥有CSV数据。因此,我仅需使用keepName,State和2000年至2016年的季度平均值。此外,我想对[State,RegionName]使用多索引。 enter image description here enter image description here

我正在使用python中的pandas处理CSV文件。如屏幕截图所示。

谢谢。

1 个答案:

答案 0 :(得分:2)

就在麻烦的for year in range(...)循环之前,您做了:

house_data.columns = pd.to_datetime(house_data.columns).to_period('M')

这意味着您的列不再是字符串。因此,在for循环中:

house_data[str(year)+'q2'] = house_data[[str(year)+'-04',...]].mean(axis=1)

将失败并抛出该错误,因为没有名称为 string 的列。要解决此问题,请执行以下操作:

house_data.columns = pd.to_datetime(house_data.columns).to_period('M').strftime('%Y-%m')

但是,您最好这样做:

house_data.columns = pd.to_datetime(house_data.columns).to_period('Q')

house_data.groupby(level=0, axis=1).mean()