У меня есть следующий кадр данных с двумя датами, одна из которых включает часовой пояс.
df = pd.DataFrame(np.array([[10, "2021-06-13 12:08:52.311 UTC", "2021-03-29 12:44:33.468"],
[36, "2019-12-07 12:18:02.311 UTC", "2011-10-15 10:14:32.118"]
]),
columns=['col1', 'date1', 'date2'])
df
Вот как я преобразовываю их из строки в дату и время:
df["date1"]= pd.to_datetime(df["date1"])
df["date2"]= pd.to_datetime(df["date2"])
, который возвращает:
col1 date1 date2
0 10 2021-06-13 12:08:52.311000+00:00 2021-03-29 12:44:33.468
1 36 2019-12-07 12:18:02.311000+00:00 2011-10-15 10:14:32.118
В какой-то момент мне нужно будет сравнить эти две даты, чтобы найти одинаковые значения. Для этого мне нужно, чтобы они были записаны в одном формате с одинаковым количеством цифр. Это сказало, как удалить часовой пояс из даты1, чтобы он соответствовал тому же формату в дате2?
utc=None
по умолчанию в pd.to_datetime
, так что это не сработало...
Я предполагаю, что обе даты указаны в формате UTC. В исходных данных они являются частью разных наборов данных, поэтому они имеют другой формат.
Используйте
localize
df["date1"] = pd.to_datetime(df["date1"]).dt.tz_localize(None)
Отвечает ли это на ваш вопрос? Как удалить часовой пояс из столбца Timestamp в кадре данных pandas