我正在尝试对具有两个行 ID 的分层数据进行子集化。
说我有数据hdf
index = MultiIndex(levels=[['foo', 'bar', 'baz', 'qux'],
['one', 'two', 'three']],
labels=[[0, 0, 0, 1, 1, 2, 2, 3, 3, 3],
[0, 1, 2, 0, 1, 1, 2, 0, 1, 2]])
hdf = DataFrame(np.random.randn(10, 3), index=index,
columns=['A', 'B', 'C'])
hdf
我希望进行子集化,以便我看到foo
and qux
,子集只返回子行two
和列A
and C
。
我可以分两步执行此操作,如下所示:
sub1 = hdf.ix[['foo','qux'], ['A', 'C']]
sub1.xs('two', level=1)
有没有一步的方法来做到这一点?
谢谢