【发布时间】:2016-12-07 10:21:39
【问题描述】:
我有一个如下所示的数据框:
df = pd.DataFrame([
[123, 'abc', '121'],
[123, 'abc', '121'],
[456, 'def', '121'],
[123, 'abc', '122'],
[123, 'abc', '122'],
[456, 'def', '145'],
[456, 'def', '145'],
[456, 'def', '121'],
], columns=['userid', 'name', 'dt'])
来自this question,我已经成功转置了它。
因此,所需的 df 将是:
userid1_date1 name_1 name_2 ... name_n
userid1_date2 name_1 name_2 ... name_n
userid2 name_1 name_2 ... name_n
userid3_date1 name_1 name_2 ... name_n
但是,我想根据日期分隔行。比如用户123有两天的数据,那么每一天的api事件的行应该是分开的。
转换后我真的不需要userid,所以无论如何你都可以使用它。
我的计划是:
- 将 df w.r.t 分组到
dt列- 旋转所有组,使每个组看起来像这样:
userid1_date1 name_1 name_2 ... name_n- 现在,连接透视数据
但是,我不知道如何在 pandas 中做到这一点!
【问题讨论】: