使用多列作为索引旋转dask数据帧
我有以下格式的Dask数据帧:使用多列作为索引旋转dask数据帧,dask,Dask,我有以下格式的Dask数据帧: date hour device param value 20190701 21 dev_01 att_1 0.000000 20190718 22 dev_01 att_2 20.000000 20190718 22 dev_01 att_3 18.611111 20190701 21 dev_01 att_4 18.706083 20190718 22 dev_01 att
date hour device param value
20190701 21 dev_01 att_1 0.000000
20190718 22 dev_01 att_2 20.000000
20190718 22 dev_01 att_3 18.611111
20190701 21 dev_01 att_4 18.706083
20190718 22 dev_01 att_5 23.333333
我正在尝试使用Dask.DataFrames.pivot_table()API透视数据帧。但是,我想使用“日期”、“小时”和“设备”作为索引(即,在数据透视表中,每一行都由日期、小时和设备标识符唯一标识):
但是,它失败了,出现以下错误:
'index' must be the name of an existing column
正如我从API文档()中了解到的,参数“index”接受单个列(而不是列表)的名称,因此会出现此错误
是否有其他方法可以使用多列作为索引来透视dask数据帧?如文档字符串中所述,透视的列必须是单列,并且必须是分类数据类型。因此,要实现您想要的功能,您必须将三个列转换为单个分类列 使用正常的Pandas语法是可行的,但可能需要完全遍历数据才能获得类别
'index' must be the name of an existing column