Python: Pandas pd.read_excel, що видає помилку ImportEr: Встановіть xlrd> = 0.9.0 для підтримки Excel


82

Я намагаюся прочитати a .xlsxз пандами, але отримую наступну помилку:

data = pd.read_excel(low_memory=False, io="DataAnalysis1/temp1.xlsx").fillna(value=0) 

Traceback (most recent call last):
  File "/Users/Vineeth/PycharmProjects/DataAnalysis1/try1.py", line 9, in <module>
    data = pd.read_excel(low_memory=False, io="DataAnalysis1/temp1.xlsx").fillna(value=0)
  File "/Users/Vineeth/venv/lib/python2.7/site-packages/pandas/util/_decorators.py", line 118, in wrapper
    return func(*args, **kwargs)
  File "/Users/Vineeth/venv/lib/python2.7/site-packages/pandas/io/excel.py", line 230, in read_excel
    io = ExcelFile(io, engine=engine)
  File "/Users/Vineeth/venv/lib/python2.7/site-packages/pandas/io/excel.py", line 263, in __init__
    raise ImportError(err_msg)
ImportError: Install xlrd >= 0.9.0 for Excel support

Я теж пробував

data = pd.read_excel("DataAnalysis1/temp1.xlsx", low_memory=False).fillna(value=0)

І я все ще отримую ту саму помилку.

Передумови: Я намагаюся витягти файл Excel із декількома аркушами як дикт фреймів даних. Я встановив xlrd версії 0.9.0 та останню версію (1.1.0), але все одно отримую ту саму помилку. Дякую!


4
Спробували прослухати повідомлення про помилку та встановити xlrdпакет?
cs95,

Так, я встановив xlrdпакет. Редагувати: Я намагався імпортувати пакет, але python видає мені import xlrd ImportError: No module named xlrdпомилку
Vineeth Sai 02

1
Я припускаю, що ви встановили іншу версію python.
cs95

Відповіді:


111

Як @COLDSPEED, так красномовно вказував на помилку, явно вказує вам встановити xlrd.

pip install xlrd

І вам буде добре їхати.


3
У мене точно була та сама проблема, мені довелося змусити перевстановити xlrd. pip install --upgrade --force-reinstall xlrd
Tamas Szuromi

6
@TamasSzuromi На жаль, у мене постійно виникає одне і те ж повідомлення про помилку після спробування обох ваших команд Install xlrd >= 0.9.0 for Excel support :: /
Revolucion for Monica

тут же (на V 1.1.0) ... і я не можу імпортувати його або, як це було запропоновано тут stackoverflow.com/questions/51227745 / ...
jjrr

27

Або використовуйте:

pip install xlrd

А якщо ви використовуєте conda, використовуйте

conda install -c anaconda xlrd

Це воно. Щасти.


6

Я отримував повідомлення про помилку

"Помилка імпорту: встановіть xlrd> = 1.0.0 для підтримки Excel"

на Pycharm для коду нижче

import pandas as pd
df2 = pd.read_excel("data.xlsx")
print(df2.head(3))
print(df2.tail(3))

Рішення: pip install xlrd

Після використання це вирішило помилку. Також не потрібно використовувати " import xlrd"



2

Це трапилося зі мною після того, як я запустив скрипт з cProfile a la, python3 -m cProfile script.pyхоча xlrd вже був встановлений і ніколи раніше не видавав цієї помилки. воно зберігалося навіть підpython3 script.py . (Звичайно, я згоден, що це сталося не з OP, враховуючи очевидну помилку імпорту)

Однак у таких випадках, як мій, наступне вирішило проблему, незважаючи на те, що в кожному випадку було сказано "вимога вже виконана".

pip install --upgrade pandas
pip install --upgrade xlrd

Досить незрозумілі речі; не впевнений, що причиною був cProfile чи просто збіг

Наступне має працювати, якщо припустити, що ви pip installоперували python2.

python3 -m pip install xlrd

2

Не знаю, чи буде це комусь корисно, але у мене була та сама проблема. Я писав pip install xlrdу запиті anaconda, перебуваючи в конкретному середовищі, і там говорилося, що він встановлений, але коли я подивився встановлені пакети, його там не було. Що вирішило проблему, це "переміщення" (я не знаю термінології для цього) в Scriptsпапку конкретного середовища і зробити pip install xlrdтам. Сподіваюся, це комусь корисно: D


2

Отримував помилку, коли я використовував jupyter.

ModuleNotFoundError: No module named 'xlrd'
...
ImportError: Install xlrd >= 0.9.0 for Excel support

це було вирішено для мене після використання.

!pip install xlrd

1

Я зіткнувся з тією ж проблемою і зайняв 2 години, щоб зрозуміти її.

  1. pip install xlrd (остання)
  2. pip install pandas (остання)
  3. Перейдіть до C: \ Python27 \ Lib \ site-пакети та перевірте наявність папки xlrd (якщо їх 2), видаліть стару версію
  4. відкрийте новий термінал і використовуйте панди для читання Excel. Це має спрацювати.

1

У мене була та сама проблема, і жодна з наведених відповідей не спрацювала. Якщо ви зайдете в налаштування (CTRL + ALT + s) і шукаєте інтерпретатор проекту, ви побачите всі встановлені пакети. Натисніть кнопку + у верхньому правому куті та знайдіть xlrd, а потім натисніть встановити пакет внизу ліворуч.

Я вже виконував команду "pip install xlrd" із розташування файлу мого python.exe до цього, тому вам, можливо, доведеться це зробити. (Ви можете знайти розташування файлу, здійснивши пошук у рядку пошуку Windows і клацнувши правою кнопкою миші -> відкрити розташування файлу, а потім введіть cmd у адресний рядок провідника файлів)


0

Перш за все вам потрібно встановити пакети xlrd & pandas. Тоді спробуйте нижче код.

import xlrd
import pandas as pd

xl = pd.ExcelFile("fileName.xlsx")
print(xl.parse(xl.sheet_names[0]))

0

Вам потрібно встановити бібліотеку "xlrd"

Для Linux (Ubuntu та похідні):

Встановлення через pip: python -m pip install --user xlrd

Встановіть загальносистемну через менеджер пакунків Linux: * sudo apt-get install python-xlrd

Windows:

Встановлення через pip: * pip install xlrd

Завантажте файли: https://pypi.org/project/xlrd/


0

Інша можливість - це те, що на машині встановлена ​​старіша версія xlrd окремо, і вона не знаходиться в папці "..: \ Python27 \ Scripts ..".

Іншим словом, в машині є 2 різні версії xlrd.

введіть тут опис зображення

коли ви перевіряєте версію нижче, вона читає ту, що не в папці "..: \ Python27 \ Scripts ..", незалежно від того, наскільки оновлене ви зробили за допомогою pip.

print xlrd.__version__

Видаліть всю надлишкову підпапку, і вона працює. (на додаток до xlrd, у мене була ще одна бібліотека, яка стикалася з такою ж)


0

Я зіткнувся з подібною проблемою, намагаючись використовувати xlrd у блокноті jupyter. Я помічаю, що ви використовуєте віртуальне середовище, і це також було ключем до моєї проблеми. У моєму венві було встановлено xlrd, але я не правильно встановив ядро ​​для цього віртуального середовища у своєму блокноті.

Щоб змусити його працювати, я створив своє віртуальне середовище та активував його.

Тоді... pip install ipykernel

І потім... ipython kernel install --user --name=myproject

Нарешті, запустіть блокноти jupyter, і коли ви створюєте новий блокнот, виберіть ім'я, яке ви створили (у цьому прикладі, "myproject")

Сподіваюся, що це допомагає.


0

Будь ласка, переконайтесь, що ваш python або python3 бачать інсталяцію xlrd. У мене була ситуація, коли python3.5 і python3.7 були встановлені в двох різних місцях. Поки xlrd було встановлено з python3.5, я використовував python3 (з python3.7 dir) для запуску свого сценарію і отримав ту ж помилку, про яку повідомлялося вище. Коли я використав правильний python (тобто python3.5 dir) для запуску мого сценарію, я зміг без проблем прочитати аркуш розповсюдження Excel.


0

З грудня 2020 р. Xlrd більше не підтримує файли xlsx, як пояснюється в офіційному журналі змін . Ви можете використовувати openpyxlзамість цього:

pip install openpyxl

І у вашому python-файлі:

import pandas as pd
pd.read_excel('path/to/file.xlsx', engine='openpyxl')
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.