Объект Data-frame не имеет атрибута

Я знаю, что такой вопрос задавался ранее, и я проверил все ответы, и я несколько раз пытался найти решение, но тщетно. На самом деле я называю Dataframe, используя Pandas. Я загрузил csv.file.

dataset from csv

Когда я data.Country и data.Year, я получаю первый и второй столбцы. Однако, когда я data.Number, каждый раз он выдает мне эту ошибку:

AttributeError: у объекта DataFrame нет атрибута Number.

Ответ 1

Проверьте свой DataFrame на data.columns

Он должен напечатать что-то вроде этого

Index([u'regiment', u'company',  u'name',u'postTestScore'], dtype='object')

Проверьте скрытые пробелы. Затем вы можете переименовать с помощью

data = data.rename(columns={'Number ': 'Number'})

Ответ 2

Я собираюсь угадать. Я думаю, что имя столбца, содержащее "Number", похоже на " Number" или "Number ". Обратите внимание, что я предполагаю, что вы можете иметь остаточное пространство в имени столбца где-нибудь. Сделайте мне одолжение и запустите print "<{}>".format(data.columns[1]) и посмотрите, что вы получаете. Это что-то вроде < Number>? Если это так, то моя догадка была правильной. Вы должны уметь это исправить:

data.columns = data.columns.str.strip()

Ответ 3

Быстрое исправление: измените, как Excel преобразует импортированные файлы. Перейдите в "Файл", затем "Параметры", затем "Дополнительно". Прокрутите вниз и снимите флажок "Использовать разделители системы". Также измените "Десятичный разделитель" на "." и "разделитель тысяч" на ",". Затем просто "заново" сохраните ваш файл в формате CSV (с разделителями-запятыми). Основная причина обычно связана с тем, как создается CSV файл. Верь, что помогает. Дело в том, зачем использовать дополнительный код, если не нужно? Межплатформенное понимание и интеграция являются ключевыми в проектировании/разработке.

Ответ 4

решение (я) здесь не работает для меня. Я пытаюсь вменять пропущенные значения:

imputer = SimpleImputer(missing_values=np.nan, strategy='mean')
X = pd.DataFrame(imputer.fit_transform(X))

print(X.columns) == Индекс (['day7', 'day14', 'Wt'], dtype = 'object')

print(type(X)) == класс 'pandas.core.frame.DataFrame'

Есть еще идеи?