我希望有人可以帮助我解决这个大熊猫问题。我觉得答案很明显,但我无法绕过它。我有两列,每列有YYYY-MM-DD HH:MM:SS值,如下所示:
A B
0 2015-09-27 02:20:00 2015-09-27 02:24:59
1 2015-09-27 02:18:59 2015-09-27 02:00:00
2 2015-09-27 01:57:00 2015-09-27 02:00:00
3 2015-09-27 02:06:00 2015-09-27 02:02:59
1)我想剥离YYYY-MM-DD数据并保留时间数据,我该怎么做?
2)我想添加第3列
df["C"] = df["A"] - df["B"]
其值有时为+ ve,有时为-ve。如何将-ve值显示为" -HH:MM:SS" ?在我尝试之前,我会继续获得类似" -1天+23:45:00"而不是-00:15:00。
非常感谢任何帮助!
答案 0 :(得分:1)
您可以通过执行以下操作来删除日期:
import datetime
a = datetime.datetime.strptime(date_string , '%Y-%m-%d %H:%M:%S')
stripped = a.strftime('%H:%M:%S')
获得负增量,你可以做到:
def diff(t1,t2):
d = t1-t2
diff_seconds = d.total_seconds()
result = ''
if diff_seconds< 0:
result = '-'
diff_seconds *= -1
result += datetime.datetime.utcfromtimestamp(diff_seconds).strftime('%H:%M:%S')
return result