Локализуйте столбец даты и времени - PullRequest
0 голосов
/ 02 октября 2018

Целью этого кода является чтение файла CSV, который имеет столбец с именем «DateTime».

Даты в этом столбце основаны на часовом поясе «EST», который не является моим, поэтому код должен быть локализованстолбец даты и времени для моего системного часового пояса.

Когда я попробовал этот код:

import pandas as pd
from datetime import datetime
from pytz import timezone
from tzlocal import get_localzone

df = pd.read_csv(r"C:\Users\Sayed\Desktop\script\data.csv")
print(df)
format = "%Y-%m-%d %H:%M:%S %Z%z"
for date in df['DateTime']:
    date = datetime(timezone('EST'))
    now_local = date.astimezone(get_localzone())
    print(now_local.strftime(format))

Я получил эту ошибку:

Traceback (most recent call last):

  File "D:/Projects/Tutorial/ff.py", line 10, in <module>
    date = datetime(timezone('EST'))

TypeError: an integer is required (got type EST)

1 Ответ

0 голосов
/ 02 октября 2018

Предполагая, что столбец DateTime уже имеет тип datetime, вы можете попробовать использовать tz_localize с tz_convert функциями .

Замените цикл for следующим:

df['DateTime'] = df['DateTime'].dt.tz_localize('EST').dt.tz_convert(get_localzone())

После этого в столбце DateTime должна быть дата и время в вашем местном часовом поясе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...