python KeyError:即使列名存在

时间:2019-09-17 15:09:14

标签: python pandas dataframe indexing keyerror

我试图通过数据框中的一列为熊猫数据框建立索引并获取KeyError。例如, 数据框具有在总分类帐帐户名称(“现金”,“证券”等)上索引的行,并且按时间段(“ Q1_2018”,“ Q2_2018”等)对列进行索引。当我使用df.index和df.columns时,将确认这些值。但是,当我运行df.loc ['Cash','Q1_2018']时,它将返回以下KeyError:'Q1_2018'。关于为什么会发生这种情况的任何想法。

            Q1_2018     Q2_2018     Q3_2018
Cash        2000000     2000100     1900000
Securites   3000000     2999900     2910000

1 个答案:

答案 0 :(得分:0)

我看到您已将iloc与数据框的标签一起使用。请注意,由于您正在使用标签,因此应该尝试使用loc。

以下是一些页面,您可能会对这两种方法的工作方式感兴趣:

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.loc.html https://pandas.pydata.org/pandas-docs/version/0.25/reference/api/pandas.DataFrame.iloc.html

loc vs iloc How are iloc, ix and loc different?