【发布时间】:2021-05-26 14:16:21
【问题描述】:
我有以下数据框,其中包含不同时间间隔的不同作业开始和结束时间的数据。数据框的一小部分如下所示。
数据框(df):
result | job | time
START | JOB0 | 1357
START | JOB2 | 2405
END | JOB2 | 2379
START | JOB3 | 4010
END | JOB0 | 5209
END | JOB3 | 6578
START | JOB0 | 6000
END | JOB0 | 6100
(注意 - 原始数据框有 5 个作业(JOB0 到 JOB4)
我想将result 列的值(START 和END)转换为数据框中的各个列。
必需的数据帧(df2)
job | START | END
JOB0 | 1357 | 5209
JOB2 | 2405 | 2379
JOB3 | 4010 | 6578
JOB0 | 6000 | 6100
代码
我尝试使用pivot_table 来实现它,但它提供了不需要的聚合值。
df2 = df.pivot_table('time', 'job','result')
代码输出
result | END | START
job
JOB0 | 5.000589e+08 5.000636e+08
JOB1 | 4.999141e+08 4.999188e+08
JOB2 | 5.001668e+08 5.001715e+08
JOB3 | 4.995190e+08 4.995187e+08
JOB4 | 5.003238e+08 5.003236e+08
我怎样才能获得所需的数据框?
【问题讨论】:
标签: python pandas dataframe pandas-groupby pivot-table