Как исправить: модуль «Pandas» не имеет атрибута «фрейм данных»


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

AttributeError : module 'pandas' has no attribute 'dataframe'

Эта ошибка обычно возникает по одной из трех причин:

1. Вы пишете pd.dataframe вместо pd.DataFrame

2. Некоторая другая переменная называется «pd» или «pandas».

3. Имя файла pd.py или pandas.py.

В следующих примерах показано, как устранить эту ошибку в каждом из этих сценариев.

Причина 1: использование pd.dataframe

Предположим, мы пытаемся создать pandas DataFrame, используя следующий синтаксис:

import pandas as pd

#attempt to create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14],
 'assists': [5, 7, 13, 12]})

AttributeError : module 'pandas' has no attribute 'dataframe'

Мы получаем ошибку, потому что мы написали слово dataframe в нижнем регистре.

Чтобы создать DataFrame pandas, мы должны написать слово «DataFrame» в верблюжьем регистре:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14],
 'assists': [5, 7, 13, 12]})

#view DataFrame
df

 points assists
0 25 5
1 12 7
2 15 13
3 14 12

Обратите внимание, что мы можем успешно создать DataFrame без каких-либо ошибок.

Причина 2: некоторая другая переменная называется «pd» или «pandas».

Мы также можем получить эту ошибку, если какая-то другая переменная в нашем скрипте называется «pd» или «pandas»:

import pandas as pd

#create a list named 'pd'
pd = [1, 2, 3, 4]

#attempt to create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14],
 'assists': [5, 7, 13, 12]})

AttributeError : module 'pandas' has no attribute 'dataframe'

Чтобы устранить эту ошибку, нам просто нужно переименовать переменную с текущим именем «pd» во что-то другое:

import pandas as pd

#create a list named 'data'
data = [1, 2, 3, 4]

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14],
 'assists': [5, 7, 13, 12]})

#view DataFrame
df

 points assists
0 25 5
1 12 7
2 15 13
3 14 12

Обратите внимание, что мы не получаем сообщение об ошибке, потому что у нас больше нет переменной с именем py или pandas.

Причина 3. Имя файла pd.py или pandas.py

Другая причина, по которой вы можете получить сообщение об ошибке, заключается в том, что имя файла вашего скрипта pd.py или pandas.py .

Чтобы устранить эту ошибку, вам просто нужно переименовать файл во что-то другое, например my_script.py или my_data.py, или буквально любое другое имя.

Дополнительные ресурсы

В следующих руководствах объясняется, как исправить другие распространенные ошибки в Python:

Как исправить KeyError в Pandas
Как исправить: ValueError: невозможно преобразовать число с плавающей запятой NaN в целое число
Как исправить: ValueError: операнды не могли транслироваться вместе с фигурами