使用多列作为索引透视数据框架

兔子比斯瓦斯

我有以下格式的Dask DataFrame:

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旋转数据框。但是,我想使用“日期”,“小时”和“设备”作为索引(即,在数据透视表中,每行将由日期,小时和设备标识符唯一地标识):

ddf.pivot_table(index = ['date', 'hour', 'device'], columns='param', values='value')

但是,它失败并显示以下错误:

'index' must be the name of an existing column

据我从API文档(此处)了解,参数'index'接受单列(而不是列表)的名称,因此会出现此错误。

是否还有其他选择可以使用多个列作为索引来旋转dask数据框?

麦考林

如文档字符串中所述,您要旋转的列必须是单个列,并且必须是类别dtype。因此,要完成所需的操作,您必须将三列转换为单个分类列。

使用常规的Pandas语法可以做到这一点,但可能需要对数据进行完整的传递才能获得类别。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章