Ich weiß, es gab eine Menge Fragen zu diesem Problem, aber keine der Lösung, die ich implementieren kann, das ist super frustrierend so fragen.Python: Subtrahieren Zeit von Datetime
Ich habe eine Spalte für Datum und Uhrzeit wie:
time timezone
2015-03-10 18:20:27 Eastern Time
2015-04-14 21:22:15 Pacific Time
2015-04-10 18:03:10 Mountain Time
Ich möchte 3 Stunden von den Mountain Time
von den Pacific Time
und 2 Stunden subtrahieren und Eastern Zeit zu halten, wie ist.
Meine Lösung:
df_slice["Time"] = df_slice["time"].map(lambda x: x.time().isoformat())
fmt = "%H:%M%:%S"
def tz_adjust(row):
if row["timezone"] == "Pacific Time":
return row["Time"] - datetime.datetime.strptime("03:00:00",fmt)
elif row["timezone"] == "Mountain Time":
return row["Time"] - datetime.datetime.strptime("02:00:00",fmt)
else:
return row["Time"]
df_slice["Tz_Time"] = df_slice.apply(tz_adjust,axis=1)
ich die folgende Fehlermeldung erhalten:
ValueError: ("':' is a bad directive in format '%H:%M%:%S'", 'occurred at index 1261660')
Ich habe auch versucht time
zu Zeit Umwandlung .time()
und anschließend Stunden auf der Grundlage der Zeitzonen subtrahieren, ich
Operand "-" error for datetime.time() and datetime.time()
Was ist die einfache Lösung für die ta sk? Es scheint ziemlich einfach zu sein.
Vielen Dank, @Dharmesh –