объект ‘DataFrame’ не имеет атрибута ‘tolist’, когда я пытаюсь преобразовать файл Excel в список

#python #python-3.x #pandas #list #tkinter

#python #python-3.x #pandas #Список #tkinter

Вопрос:

Я пытаюсь прочитать этот файл Excel на своем ноутбуке, в котором есть только один столбец, и я хочу перенести его в список с помощью pandas, используя:

 years = pd.read_excel(r"/Users/vijayaswani/Downloads/years.xlsx").tolist()
  

но я получаю сообщение об ошибке

 'DataFrame' object has no attribute 'tolist'
  

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

Что не так с этим кодом и как я могу получить этот файл Excel в виде списка?

(Моя конечная цель — получить список, который я могу перенести в Tkinter Combobox)

Комментарии:

1. Как насчет .values.tolist() ?

2. @G.Anderson это сработало, спасибо!!

Ответ №1:

У вас может быть фрейм данных с одним столбцом. Попробуйте squeeze() принудительно преобразовать его в серию pandas:

 years = (pd.read_excel(r"/Users/vijayaswani/Downloads/years.xlsx")
           .squeeze()
           .tolist())