#python #pandas #attributeerror
#python #pandas #ошибка атрибута
Вопрос:
Я не могу понять, почему я получаю эту ошибку при попытке использовать is_subperiod
функцию pandas
импорта
>>> import pandas as pd
>>> pd.tseries.frequencies.is_subperiod('M', 'Q')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: module 'pandas.tseries.frequencies' has no attribute 'is_subperiod'
Это странно, поскольку импорт работает нормально, и я также использовал pandas без каких-либо проблем в прошлом.
Комментарии:
1. какая версия pandas? pd.__version__?
2. @yoav_aaa 0.24.2
3. в версии 0.24.2 отсутствует функция is_subperiod. удалите ее и установите 0.22.0, используя pip install pandas ==0.22.0.
4. теперь я получаю эту ошибку при попытке выполнить следующий импорт:
import pandas.compat as compat
выдает мнеAttributeEror: module 'pandas' has no attribute compat
Ответ №1:
Начиная с версии 0.23 pandas переместил is_subperiod
функцию в pd._libs.tslibs.frequencies.is_subperiod
(фиксация #17746)
Если вы хотите использовать эту функцию как со старой, так и с новой версиями, вы, вероятно, написали бы что-то вроде:
import pandas as pd
try:
_pandas_is_subperiod = pd.tseries.frequencies.is_subperiod
except AttributeError:
_pandas_is_subperiod = pd._libs.tslibs.frequencies.is_subperiod
_pandas_is_subperiod('M', 'Q')