2017-02-22 24 views
1

У меня есть следующий фреймворк, имеющий «Местоположение» и «Имя» в качестве индекса. Cost Item Purchased Location Name
Store 1 Chris 22.5 Dog Food Kevyn 2.5 Kitty Litter Store 2 Vinod 5.0 Bird Seed
KeyError при доступе к файловому фрейму с несколькими индексами в Pandas

я могу получить доступ к df.loc["Store 1"] Но df.loc["Store 1"]["Kevyn"] дает мне исключение KeyError. Что я делаю не так?

+0

передать кортеж 'df.loc [("Store 1", "Kevyn")]', см docs http://pandas.pydata.org/pandas-docs/stable/advanced.html#advanced-indexing-with-hierarchical-index – EdChum

ответ

0

Вы используете неверную цепочечную индексацию здесь, где вы хотите быть индексировать как уровни мультииндексных с чем-то вроде

df.loc['Store 1', 'Kevyn'] 

См Basic indexing on axis with MultiIndex в документации.

0

Вам необходимо пройти кортеж:

In [100]: 
df.loc[('Store 1', 'Kevyn')] 

Out[100]: 
Cost      2.5 
Item Purchased Kitty Litter 
Name: (Store 1, Kevyn), dtype: object 

В docs подробно, как индекс