如何减去两列之间的时间并将其转换为分钟
我想减去已交付的时间-已排序的时间,以获取交付所需的时间。
df.time_ordered = pd.to_datetime(df.time_ordered)
这不会输出正确的时间,而是将今天的日期添加为时间
将两个时间列都转换为日期时间,求出差,用Series.dt.total_seconds
转换为秒,然后除以Series.dt.total_seconds
转换为分钟:
60
尝试to_datetime()
df['diff'] = (pd.to_datetime(df.time_ordered, format='%I:%M:%S %p')
.sub(pd.to_datetime(df.time_delivered, format='%I:%M:%S %p'))
.dt.total_seconds()
.div(60))
输出:
df = pd.DataFrame([['9:25:00 AM','10:58:00 AM']],
columns=['time1', 'time2'])
print(pd.to_datetime(df.time2)-pd.to_datetime(df.time1))