Python 如何通过重新设计的案例组对时间戳数据进行排序?
我在下面有一个数据集: 我想制作按案例ID分类的案例列表,以及按动作时间排序的事件 案例ID应从0开始计数,事件应在“[]”之间进行Oragnize 如何按重新设计的案例组对时间戳数据进行排序,如下所示 最后,我想在每一个案例ID中列出第一个动作时间和最后一个动作时间 是否有有用的功能来执行这些操作?使用:Python 如何通过重新设计的案例组对时间戳数据进行排序?,python,pandas,Python,Pandas,我在下面有一个数据集: 我想制作按案例ID分类的案例列表,以及按动作时间排序的事件 案例ID应从0开始计数,事件应在“[]”之间进行Oragnize 如何按重新设计的案例组对时间戳数据进行排序,如下所示 最后,我想在每一个案例ID中列出第一个动作时间和最后一个动作时间 是否有有用的功能来执行这些操作?使用: df['Action Time'] = pd.to_datetime(df['Action Time']) df = (df.sort_values(['Case Id','Actio
df['Action Time'] = pd.to_datetime(df['Action Time'])
df = (df.sort_values(['Case Id','Action Time'])
.groupby('Case Id')['Process']
.agg(list)
.reset_index(name='Events'))
第一次和最后一次使用:
df = (df.sort_values(['Case Id','Action Time'])
.groupby('Case Id')['Process']
.agg(Events = ("Process": list),
First_time = ("Action Time": "first"),
Last_time = ("Action Time": "last"))
.reset_index())
要改进jezrael的回答,请提取流程的字母并获取第一个和最后一个事件:
df['Action Time'] = pd.to_datetime(df['Action Time'])
df['Process'] = df['Process'].str.split(" ").str[-1]
df = df.sort_values(['Case Id','Action Time']
).groupby('Case Id'
).agg(Events = ("Process", list),
First = ("Process", "first"),
Last = ("Process", "last"), )