我在python pandas
中处理电子商务数据集,如下所示:
Timestamp
2019-10-23 08:18:14 UTC
2019-10-23 08:18:17 UTC
2019-10-23 08:18:27 UTC
2019-10-15 04:09:18 UTC
2019-10-15 04:10:14 UTC
SessionId
1
1
1
2
2
我想计算每个会话持续时间并使用该信息创建一个新的数据框。 我怎样才能用熊猫做到这一点?
下面是如何执行此操作的示例:
import pandas as pd
# dummy data
df = pd.DataFrame({
'Timestamp': ['2019-10-23 08:18:14', ' 2019-10-23 08:18:17', ' 2019-10-23 08:18:27', ' 2019-10-15 04:09:18', ' 2019-10-15 04:10:14'],
'SessionId': [1, 1, 1, 2, 2]
})
df.Timestamp = pd.to_datetime(df.Timestamp) # ensure timestamps are actual datetime objects
df.groupby('SessionId')['Timestamp'].agg(lambda x: max(x) - min(x)).to_frame().rename(columns={'Timestamp': 'Duration'})