【发布时间】:2014-03-11 13:37:38
【问题描述】:
我有一个DataFrame 喜欢关注。
df = pd.DataFrame({'id' : [1,1,2,3,2],
'value' : ["a","b","a","a","c"], 'Time' : ['6/Nov/2012 23:59:59 -0600','6/Nov/2012 00:00:05 -0600','7/Nov/2012 00:00:09 -0600','27/Nov/2012 00:00:13 -0600','27/Nov/2012 00:00:17 -0600']})
我需要得到如下输出。
combined_id | enter time | exit time | time difference
combined_id 应该通过分组 'id' 和 'value' 来创建
g = df.groupby(['id', 'value'])
以下不适用于按两列分组。 (这里如何使用first()和last()作为进出时间?)
df['enter'] = g.apply(lambda x: x.first())
要获得差异会遵循以下工作吗?
df['delta'] = (df['exit']-df['enter'].shift()).fillna(0)
【问题讨论】:
-
我想我已经回答了这个问题,如果没有,您能否提供所需的输出? :)
-
@Andy Hayden : 不是这个 :)