我的数据框如下:
count
year person
a.smith 1
2008 b.johns 2
c.gilles 3
a.smith 4
2009 b.johns 3
c.gilles 2
其中year
和person
都是索引的一部分。我希望所有年份都使用a.smith
返回所有行。我可以找到df.loc[(2008, 'a.smith)]
的特定年份的计数,输出1.但如果我尝试df.loc[(:,'a.smith
)],我会得到SyntaxError: invalid syntax
。
如何将df.loc
用于MultiIndex中的一系列索引值?
答案 0 :(得分:0)
使用pd.IndexSlice
idx = pd.IndexSlice
df.loc[idx[:,'a.smith'],:]
Out[200]:
count
year person
2008 a.smith 1
2009 a.smith 4
数据输入
df
Out[211]:
count
year person
2008 a.smith 1
b.johns 2
c.gilles 3
2009 a.smith 4
b.johns 3
c.gilles 2