Pandas 从结束时间和运行时间计算开始时间(以熊猫为单位)
我刚刚开始我的第一次实习,已经被分配了一项给我带来麻烦的任务。我有一个带有“完成时间”和“周期时间”列的数据帧,其中周期列是%H:%M:%S.%f中的运行时间 我需要通过从结束时间减去运行时间来计算开始时间和日期。我尝试过使用datetime库,但这被证明是不成功的,因为它希望两列都是datetime格式,但运行时没有日期,也不应该有日期 cycle列由最初看起来像25.2(以秒为单位)的十进制字符串转换而来,使用: 以下是数据帧:Pandas 从结束时间和运行时间计算开始时间(以熊猫为单位),pandas,datetime,time,Pandas,Datetime,Time,我刚刚开始我的第一次实习,已经被分配了一项给我带来麻烦的任务。我有一个带有“完成时间”和“周期时间”列的数据帧,其中周期列是%H:%M:%S.%f中的运行时间 我需要通过从结束时间减去运行时间来计算开始时间和日期。我尝试过使用datetime库,但这被证明是不成功的,因为它希望两列都是datetime格式,但运行时没有日期,也不应该有日期 cycle列由最初看起来像25.2(以秒为单位)的十进制字符串转换而来,使用: 以下是数据帧: complete_time cyc
complete_time cycle_time
0 2018-05-07 17:12:34.220 00:00:25.200000
1 2018-05-07 17:12:37.807 00:00:00
2 2018-05-07 17:12:43.453 00:00:25.200000
3 2018-05-07 17:12:51.193 00:00:25.100000
4 2018-05-07 17:12:52.223 00:00:25.300000
5 2018-05-07 17:12:54.297 00:00:00
6 2018-05-07 17:12:59.430 00:00:25.200000
7 2018-05-07 17:13:03.047 00:00:00
8 2018-05-07 17:13:08.697 00:00:25.200000
9 2018-05-07 17:13:16.417 00:00:25.200000
我想在dataframe中添加开始时间作为新列
提前感谢您的指导。使用pd.to\u timedelta()
而不是pd.to\u datetime
:
df['cycle_time'] = pd.to_timedelta(df['Cycle Time'].astype(float), unit='s')
df['start_time'] = df['complete_time'] - df['cycle_time']
df['cycle_time'] = pd.to_timedelta(df['Cycle Time'].astype(float), unit='s')
df['start_time'] = df['complete_time'] - df['cycle_time']