【发布时间】:2018-10-05 04:52:58
【问题描述】:
我正在寻求有关 Groupby + Transform 的帮助。我意识到它们结合起来是一个非常强大的工具,但是在查找我想要完成的文档/特定情况时遇到了麻烦。我想根据多个参数定义的组计算时间增量。具体来说,我想要一个列,仅当同时存在已分配和批准时,才按案例编号和站点显示分配到已批准的时间差。到目前为止,请参阅下面的数据集和代码:
数据集(开始)
Casenumber Site CreatedDate NewValue
1 A 2018-03-30 16:47:03 Approved
2 A 2018-04-02 19:24:43 Assigned
2 A 2018-04-02 25:24:43 Delayed
2 A 2018-04-02 20:49:45 Approved
2 B 2018-04-02 19:24:43 Assigned
2 B 2018-04-02 22:49:45 Approved
2 B 2018-04-02 25:24:43 Delayed
数据集(完成)
Casenumber Site CreatedDate NewValue Diff
1 A 2018-03-30 16:47:03 Approved N/A
2 A 2018-04-02 19:24:43 Assigned 0 days 0 hours
2 A 2018-04-02 20:49:45 Approved 0 days 1:25:02
2 A 2018-04-02 25:24:43 Delayed N/A
2 B 2018-04-02 19:24:43 Assigned 0 days 0 hours
2 B 2018-04-02 22:49:45 Approved 0 days 3:25:02
2 B 2018-04-02 25:24:43 Delayed N/A
到目前为止我得到了什么
(df['Diff'] = df['CreatedDate'] -
(df.groupby(['Casenumber', 'Site'])['CreatedDate'].transform('first')))
感谢您的帮助!
【问题讨论】:
标签: python pandas-groupby