我想使用dask.pivot_talbe转换数据框。 首先,我按数据分组并获得输出。
agg_dict = {
'value': ['count', on_count, off_count, 'max', 'min', 'mean', 'std']
}
df = dd.read_csv(filename, engine='python')
df = df.groupby(['addr', 'timestamp']).agg(agg_dict)
df.compute()
然后,我想使用ivot_table修改数据帧。
df.pivot_table(index='timestamp', columns='addr', values='value')
获取错误:
ValueError:“列”必须是现有列的名称
如何解决?
答案 0 :(得分:0)
如消息所示,您将希望addr
成为一列,但是在groupby之后,它将成为索引的一部分,因此您需要
df = df.reset_index()
在枢轴之前。
请注意,这与Dask无关,因为您调用了compute()
,从而获得了正常的Pandas数据帧。