我有一个如下的pandas数据框:
df:
"物品+日期+时间的组合是唯一的。"
我已经尝试了:
上面的代码生成了一个列表,但时间不对齐从00:00:00开始 - 我可以检查列表并添加和跟踪索引(因此可以在这些索引处将NaN添加到值列表)。
上面的代码给了我一个(未对齐的)时间值数据框,我可以将其对齐(参见上文),并附加到上一步创建的数据框中,但我无法弄清楚如何在正确的时间对齐列中获取数据框的值。
df:
item day time data
0 item_0 2012-12-02 00:00:01 0.81
1 item_0 2012-12-02 00:00:02 0.07
2 item_0 2012-12-03 00:00:00 0.84
3 item_1 2012-12-02 00:00:01 0.47
"物品+日期+时间的组合是唯一的。"
item day time_0 time_1 time_2
0 item_0 2012-12-02 NaN 0.81 0.07
1 item_0 2012-12-03 0.84 NaN NaN
2 item_1 2012-12-02 NaN 0.47 ...
我已经尝试了:
df_stage_1 = df.groupby(['item','day']).apply(lambda x: x['time'].tolist()).reset_index()
上面的代码生成了一个列表,但时间不对齐从00:00:00开始 - 我可以检查列表并添加和跟踪索引(因此可以在这些索引处将NaN添加到值列表)。
df_stage_1 = pd.DataFrame(df_stage_1.tolist(), )
上面的代码给了我一个(未对齐的)时间值数据框,我可以将其对齐(参见上文),并附加到上一步创建的数据框中,但我无法弄清楚如何在正确的时间对齐列中获取数据框的值。