web-dev-qa-db-fra.com

ImportError: extension C: aucun module nommé 'analyse syntaxique' n'est construit

J'essayais de trouver une solution à cette erreur d'importation concernant la bibliothèque pandas quand il ne disait pas de module nommé "analyse". Chaque bibliothèque doit être installée correctement à partir de l'interpréteur et constitue la dernière version.

Voici ce que la console retourne:

Traceback (most recent call last):
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas\__init__.py", line 26, in <module>
    from pandas._libs import (hashtable as _hashtable,
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas\_libs\__init__.py", line 4, in <module>
from .tslib import iNaT, NaT, Timestamp, Timedelta, OutOfBoundsDatetime
  File "pandas\_libs\tslibs\conversion.pxd", line 11, in init pandas._libs.tslib
  File "pandas\_libs\tslibs\conversion.pyx", line 40, in init pandas._libs.tslibs.conversion
ModuleNotFoundError: No module named 'parsing'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:/Users/shaya/PycharmProjects/NEA/Main.py", line 4, in <module>
import pandas_datareader.data as data
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas_datareader\__init__.py", line 2, in <module>
from .data import (DataReader, Options, get_components_yahoo,
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas_datareader\data.py", line 7, in <module>
from pandas_datareader.av.forex import AVForexReader
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas_datareader\av\__init__.py", line 3, in <module>
from pandas_datareader.base import _BaseReader
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas_datareader\base.py", line 7, in <module>
import pandas.compat as compat
  File "C:\Users\shaya\PycharmProjects\NEA\venv\lib\site-packages\pandas\__init__.py", line 35, in <module>
"the C extensions first.".format(module))
ImportError: C extension: No module named 'parsing' not built. If you want to import pandas from the source directory, you may need to run 'python setup.py build_ext --inplace --force' to build the C extensions first.

Tous les retraits ci-dessus proviennent de PyCharm.

Système d'exploitation: Windows . J'utilise pip pour installer des packages Version Python: 3.7.1, version Panda: 0.23.4

4
Shayaan Khan

Avez-vous ajouté du python au chemin? Pour tester cela; ouvrez un cmd et tapez python. Si c'est sur votre chemin, vous devriez voir la version de python que vous utilisez (en supposant que vous utilisez une machine Windows). Si tel est le cas, vous pouvez simplement exécuter la commande après l'avoir cochée. Sinon, accédez à l'emplacement où Python est installé, ouvrez python.exe et essayez d'exécuter la commande python setup.py build_ext --inplace --force

Si cela ne fonctionne pas, vous devriez essayer de réinstaller les pandas avec pip install --upgrade --force-reinstall pandas 

Si cela échoue également, vous pouvez également faire preuve de rigueur et simplement créer un nouvel environnement et y installer des pandas. Note: Il est probablement préférable d'installer Pandas en utilisant Conda Package Manager. Pandas a une partie de son code écrite en C pour le rendre plus rapide. Si vous avez essayé d'installer manuellement des pandas, vous devez le construire. 

0
Psychotechnopath

J'ai eu le même problème dans les mêmes circonstances. J'ai parcouru le code de certains fichiers de pandas et j'ai constaté qu'il existe effectivement un module appelé "analyse syntaxique" dans le dossier tslib de mon répertoire pandas, mais pour une raison quelconque, il ne peut pas l'appeler. Je viens de réinstaller Python et cela fonctionne maintenant pour moi. Si vous trouvez une autre alternative, s'il vous plaît faites le moi savoir.

0
Rajarshi Ghosh