我有以下DataFrame
:简单的大熊猫多指标切片
df_1 = DataFrame({
"alpha" : [1,1,1,2,2,2,3,3,3] ,
"beta" : [3,4,5,3,4,5,3,4,5] ,
"val_1" : ["x", "y" , "z", "w", "a", "b", "v1" , "v2" , "v3" ] ,
"val_2" : ["z1", "z2" , "z3", "w1", "w2", "w3" , "zz1" , "zz2" , "zz3" ]
})
df_1.set_index(["alpha", "beta"], inplace=True)
我想选择以下突出显示的行:
也就是说,所有行上beta
是3或5.
我已经多次浏览过熊猫文档,找不到方法去做这个。最接近我认为必须回答的是:
df_1.xs((3,5), level="beta", drop_level=False)
现在哪个目前失败。什么是适当的索引/切片方式来获得这个?
难道你不就是暴力吗?或者它的数据集很大? – Olian04
在这个问题https://stackoverflow.com/questions/15463729/select-a-multiple-key-cross-section-from-a-dataframe他们解决基本上相同的问题,通过将其转换为“面板”。 – jdehesa