在数据框上使用多索引时出现KeyError

时间:2020-08-24 09:18:35

标签: python pandas multi-index

我有一个数据帧(df_final),其中有2个索引(矿物和年份)。

                         Developed Countries   ...  Transition Countries 
Mineral      Year                              ...                       
Iron Fe      2014-01-01             543730900  ...              119680450
             2015-01-01             580394662  ...              113540570
             2016-01-01             608537133  ...              108977300
             2017-01-01             632252158  ...              109270430
             2018-01-01             648117225  ...              110999150
Chromium CrO 2014-01-01                451819  ...                2669000
             2015-01-01                457100  ...                2502900
             2016-01-01                469140  ...                2493000
             2017-01-01                416285  ...                2740200
             2018-01-01                509424  ...                3078100
Cobalt       2014-01-01                 15383  ...                   5400
             2015-01-01                 16298  ...                   5800
             2016-01-01                 15281  ...                   5600
             2017-01-01                 14032  ...                   4700
             2018-01-01                 12353  ...                   5330

通过此查询可以很好地返回数据:

df_final.loc['Gold','2014']

但是,我得到一个

KeyError:'2014'

使用此查询:

df_final.loc[:,'2014']

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用它来获得Mineral = Year的所有'2014'

df_final.loc[(df_final.index.levels[0], '2014'), :]