Pandas 如何在Dask数据帧上正确执行多索引切片?

Pandas 如何在Dask数据帧上正确执行多索引切片?,pandas,dask,Pandas,Dask,我试图在Dask中有效地对两个索引进行切片 我已尝试在第二级使用.loc,但出现以下错误: cmb.loc[(slice(0, 1), slice(1, 10))].compute() cmb.loc[(slice(0, 1), slice(1.0,20.0))].compute() # (2) TypeError: cannot do slice indexing on <class 'pandas.core.indexes.base.Index'> with these in

我试图在Dask中有效地对两个索引进行切片

我已尝试在第二级使用.loc,但出现以下错误:

cmb.loc[(slice(0, 1), slice(1, 10))].compute() 
cmb.loc[(slice(0, 1), slice(1.0,20.0))].compute() # (2)

TypeError: cannot do slice indexing on <class 'pandas.core.indexes.base.Index'> with these indexers [1] of <class 'int'>
这些是上文(1)中的实际结果

我希望上面的第(2)部分给出以下输出:

cmb.loc[(slice(0, 1), slice(1.0,20.0))].compute().head()
                    durations filename
channel start_time                    
0       14.343985   11.167318  df_0.h5
理想情况下,如果dask中有一个与pandas完全相同的
xs
方法,它将立即解决我的问题:

dfs_combined.xs([slice(1, 2), slice(45, 200)],
                    level=['channel', 'start_time'])

自2019年2月19日起,Dask数据帧不支持熊猫多索引。

非常清楚,谢谢。实现类似目标的另一种方法是什么?有什么想法吗?
cmb.loc[(slice(0, 1), slice(1.0,20.0))].compute().head()
                    durations filename
channel start_time                    
0       14.343985   11.167318  df_0.h5
dfs_combined.xs([slice(1, 2), slice(45, 200)],
                    level=['channel', 'start_time'])