python-3.x - 计算熊猫中2个日期的分钟差
问题描述
我在数据框中有 2 列。我想在几分钟内计算 2 列的差异并将结果写入新列
Input
Planned Pickup date/time Actual Pickup date/time
07/05/2018 09:28:00 07/05/2018 09:33:15
14/05/2018 17:00:00 15/05/2018 08:44:08
15/05/2018 17:00:00 15/05/2018 10:52:50
15/05/2018 17:00:00 15/05/2018 15:03:34
15/05/2018 17:00:00 15/05/2018 15:03:34
16/05/2018 17:00:00 16/05/2018 16:00:38
我想在几分钟内计算实际和计划取货的差异,并将结果写入数据框中的一个新列,称为 data['time difference']
Expected Output
Planned Pickup date/time Actual Pickup date/time Time Difference
07/05/2018 09:28:00 07/05/2018 09:33:15 5
14/05/2018 17:00:00 15/05/2018 08:44:08 944
15/05/2018 17:00:00 15/05/2018 10:52:50 -368
15/05/2018 17:00:00 15/05/2018 15:03:34 -117
15/05/2018 17:00:00 15/05/2018 15:03:34 -117
16/05/2018 17:00:00 16/05/2018 16:00:38 -60
如何在熊猫中做到这一点
解决方案
利用:
data['time difference'] = ((pd.to_datetime(data['Actual Pickup date/time']) -
pd.to_datetime(data['Planned Pickup date/time']))
.dt.total_seconds() / 60)
print (data)
Planned Pickup date/time Actual Pickup date/time time difference
0 07/05/2018 09:28:00 07/05/2018 09:33:15 5.250000
1 14/05/2018 17:00:00 15/05/2018 08:44:08 944.133333
2 15/05/2018 17:00:00 15/05/2018 10:52:50 -367.166667
3 15/05/2018 17:00:00 15/05/2018 15:03:34 -116.433333
4 15/05/2018 17:00:00 15/05/2018 15:03:34 -116.433333
5 16/05/2018 17:00:00 16/05/2018 16:00:38 -59.366667
或者如果需要floor
值:
data['time difference'] = ((pd.to_datetime(data['Actual Pickup date/time']) -
pd.to_datetime(data['Planned Pickup date/time']))
.astype('<m8[m]').astype(int))
print (data)
Planned Pickup date/time Actual Pickup date/time time difference
0 07/05/2018 09:28:00 07/05/2018 09:33:15 5
1 14/05/2018 17:00:00 15/05/2018 08:44:08 944
2 15/05/2018 17:00:00 15/05/2018 10:52:50 -368
3 15/05/2018 17:00:00 15/05/2018 15:03:34 -117
4 15/05/2018 17:00:00 15/05/2018 15:03:34 -117
5 16/05/2018 17:00:00 16/05/2018 16:00:38 -60
推荐阅读
- python - 如何更正pip的路径(python2.7)
- firebase - Android Studio 中的依赖解析问题
- php - 在PHP中将二进制字符串转换为图像?
- unit-testing - 当有人说“(仅)测试公共 api”时,“公共 api”到底是什么意思?
- javascript - 使用特殊字符解析 JSON 数组
- java - 比较我的数组中的元素以查找对,但不知道找到两对时该怎么做
- java - 通过 JMeter 正则表达式提取器从响应中提取 ID
- scala - 创建一个数组数组,每个数组都有索引
- arrays - 删除具有空数组的键
- orange - Orange3 build-macos-app.sh 显示自定义小部件类别,但不显示小部件本身