Pandas loc:多索引并选择具有特定索引值的行

时间:2017-10-17 00:30:36

标签: python pandas multi-index

我的数据框有3列A B C

A B C
1 2 10
2 3 20
3 0 30

我已将列A,B编入索引并已排序

df = ( df.set_index([A,B]).sort_index())

我想选择索引为A(1,2)和索引为B(2,3)

的行
df1 = df.loc[[[1,2],[2,3]]]

它引发了一个错误..我做错了什么..我做了很少的其他事情,并且无法提供解决方案..

1 个答案:

答案 0 :(得分:1)

IIUC,你使用元组,因为这是MultiIndex值被散列的方式(因为列表不能被散列)。

print(df.loc[[(1, 2), (2, 3)]])
      C
A B
1 2  10
2 3  20