Использование 'неоднозначного' параметра bool с Series.tz_localize не работает - PullRequest
0 голосов
/ 29 ноября 2018

Я пытаюсь установить часовой пояс объекта DatetimeIndex, используя параметр ambiguous и заполняя его bool-ndarray, как описано в документации (https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Series.tz_localize.html):

Thisпохоже, не работает, потому что я все еще получаю Невозможно определить dst time ошибку, например, при использовании floor :

import pandas as pd
import numpy as np
dates = pd.date_range(start='2018-11-04', end = '2018-11-05', freq = 'min')
dates.tz_localize(tz='US/Central', ambiguous = np.ones((1441,), dtype=bool)).floor('H')


File "pandas\_libs\tslibs\conversion.pyx", line 963, in pandas._libs.tslibs.conversion.tz_localize_to_utc

AmbiguousTimeError: Cannot infer dst time from '2018-11-04 01:00:00', try using the 'ambiguous' argument

Однако, используя неоднозначный параметр с небулевым значением действительно работает:

dates.tz_localize(tz='US/Central', ambiguous = 'NaT').floor('H')

DatetimeIndex(['2018-11-04 00:00:00-05:00', '2018-11-04 00:00:00-05:00',
           '2018-11-04 00:00:00-05:00', '2018-11-04 00:00:00-05:00',
           '2018-11-04 00:00:00-05:00', '2018-11-04 00:00:00-05:00',
           '2018-11-04 00:00:00-05:00', '2018-11-04 00:00:00-05:00',
           '2018-11-04 00:00:00-05:00', '2018-11-04 00:00:00-05:00',
           ...
           '2018-11-04 23:00:00-06:00', '2018-11-04 23:00:00-06:00',
           '2018-11-04 23:00:00-06:00', '2018-11-04 23:00:00-06:00',
           '2018-11-04 23:00:00-06:00', '2018-11-04 23:00:00-06:00',
           '2018-11-04 23:00:00-06:00', '2018-11-04 23:00:00-06:00',
           '2018-11-04 23:00:00-06:00', '2018-11-05 00:00:00-06:00'],
          dtype='datetime64[ns, US/Central]', length=1441, freq=None)

Почему это так? Не могли бы вы объяснить, как использовать версию параметра bool?

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