J'utilise Python3.9 et j'ai commencé à écrire un script simple pour façonner certaines données, je l'ai testé après avoir écrit une seule ligne et j'obtiens cette erreur:
dominik at Dominiks-MacBook-Pro in Google Analytics API $ which python /usr/bin/python dominik at Dominiks-MacBook-Pro in Google Analytics API $ python --version >>> Python 3.9.0 dominik at Dominiks-MacBook-Pro in Google Analytics API $ pip --version >>> pip 20.2.4 from /Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pip (python 3.9) dominik at Dominiks-MacBook-Pro in Google Analytics API $ pip list >>> Package Version >>> --------------- ------- >>> numpy 1.19.2 >>> pandas 1.1.3 >>> pip 20.2.4 >>> python-dateutil 2.8.1 >>> pytz 2020.1 >>> setuptools 49.2.1 >>> six 1.15.0 >>> wheel 0.35.1
Voici le script Python:
Hello Hello Hello
Le fichier que je lis est:
import pandas as pd, numpy as np df = pd.read_csv('test.txt', delimiter = "\n", header=None) print(df)
Je suis sur MacO.
Les détails de mon installation Python sont:
$ Python3.9 Shape_Response.py Python(2857,0x1061635c0) malloc: can't allocate region *** mach_vm_map(size=18446744072478715904) failed (error code=3) Python(2857,0x1061635c0) malloc: *** set a breakpoint in malloc_error_break to debug init_dgelsd failed init Traceback (most recent call last): File "/Users/dominik/Desktop/Google Analytics API/Shape_Response.py", line 1, in <module> import pandas as pd, numpy as np File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/pandas/__init__.py", line 11, in <module> __import__(dependency) File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/numpy/__init__.py", line 286, in <module> raise RuntimeError(msg) RuntimeError: Polyfit sanity test emitted a warning, most likely due to using a buggy Accelerate backend. If you compiled yourself, see site.cfg.example for information. Otherwise report this to the vendor that provided NumPy. RankWarning: Polyfit may be poorly conditioned
J'ai installé des pandas en utilisant pip install wheel
et pip install pandas
.
J'ai également de la mémoire libre, j'ai réinstallé mon Python et je rencontre toujours cette erreur.
Je suis un débutant en Python et je ne comprends vraiment pas le message d'erreur, j'ai essayé de chercher mais rien n'a fonctionné ...
Des idées sur ce que je fais mal?
Merci beaucoup
3 Réponses :
Le même problème était pour moi lorsque j'installe python3.8 / 3.9 à l'aide de brew. J'ai contourné ce problème en supprimant la version brew de python et en installant python à partir de python.org/mac-osx
J'avais également des problèmes pour faire fonctionner numpy
sur ma machine.
Ma configuration est MacOS Big Sur exécutant la ligne de commande zsh en utilisant l'extension oh-my-zsh
. J'avais des problèmes avec l'importation de numpy
depuis que je suis passé de Catalina à Big Sur.
J'avais quelques versions de Python3 installées sur ma machine:
avec l'alias python3
pointant vers l'une des versions de brew
de Python, au moins selon la sortie de l'exécution de la commande which python3
. Je crois que ces versions de brew
ont été installées automatiquement en tant que dépendances pour un autre programme.
Comme j'avais plusieurs versions de Python installées, je crois que j'avais plusieurs chemins pointant vers le même alias python
/ python3
. Pour résoudre ce problème, j'ai d'abord supprimé tous les anciens chemins Python qui auraient pu être créés automatiquement chaque fois que j'installais une nouvelle version de Python (soit via brew ou version officielle).
J'ai pris les mesures suivantes pour résoudre mon problème supposé. Si votre problème ressemble au mien, cela peut être utile!
.bashrc
et .zshrc
vi ~/.bashrc
et supprimez tout ce qui contient quelque chose comme export PATH=/usr/...<some more directories>...python:%PATH
.vi ~/.zshrc
et suivez le même processus que précédemment.brew
-installed versions de Python Ensuite, j'ai supprimé toutes les versions de python
installées par brew
. Comme j'avais à la fois Python3.9 et Python3.8, j'ai utilisé les commandes suivantes pour les désinstaller via brew
:
brew uninstall python@3.9
brew uninstall python@3.8
Une fois que les brew
versions de Python ont été désinstallés, exécutant la commande which python3
maintenant a la version Python3.8 j'avais installé à partir python.org . Comme je voulais exécuter une version différente de Python, je suis allé sur la page de téléchargement de python pour Mac OS X et j'ai téléchargé le programme d' installation de Mac OS X 64 bits .
Après avoir fait cela et redémarré mon terminal, l'exécution de la commande which python3
pointait maintenant vers la dernière version de Python que j'ai installée.
/Library/Frameworks/Python.framework/Versions/3.9/bin/pip3
Vous devez également exécuter which pip3
pour confirmer que pip3
est pip3
à la bonne version de pip à utiliser pour Python3.9, ce qui devrait être le cas si vous installez Python via le programme d'installation.
/Library/Frameworks/Python.framework/Versions/3.9/bin/python3
numpy
Une fois que python3
et pip3
sont configurés, vous pouvez exécuter pip3 install numpy
, qui devrait installer une nouvelle version de numpy
pour Python3.9. Ensuite, l'exécution d'une instruction d'importation pour numpy
(telle que import numpy as np
) à l'intérieur d'un fichier .py
devrait fonctionner sans problème.
Je suis sûr que ce n'est pas la meilleure façon de gérer différentes versions de Python, mais cela a fonctionné pour moi et j'espère que cela fonctionnera également pour vous. Dans l'ensemble cependant, cela peut être une bonne solution de contournement pour le moment jusqu'à ce que quelqu'un trouve un meilleur moyen ou si numpy
corrige cela dans une future mise à jour.
J'ai entendu dire qu'utiliser pyenv et pipenv sont de bons moyens de gérer plusieurs environnements et versions de Python. Cela peut vous être utile. Bonne chance!
Edit: Ajout d'une section sur l'aliasing pip3
et d'une section sur le résultat après l'installation de numpy
. Edit: Ajout d'informations sur l'origine des multiples versions de Python que j'avais sur ma machine.
brew n'est pas encore stable pour MacOS BIG SUR à ce jour. J'ai mis à niveau vers Python 3.9 et j'ai rencontré le même problème avec les allocations de mémoire numpy, donc je suis revenu comme ceci:
brew link --overwrite python@3.8 Linking /usr/local/Cellar/python@3.8/3.8.6_2... 25 symlinks created If you need to have this software first in your PATH instead consider running: echo 'export PATH="/usr/local/opt/python@3.8/bin:$PATH"' >> ~/.zshrc
de cette façon, je suis de retour sur Python 3.8.6 qui fonctionne bien
J'ai eu la même erreur (OSX et Python@3.9). Ma seule résolution était de revenir à Python@3.8. Je pense que cela est en cours d' élaboration - bugs.python.org/issue40928
Si vous effectuez une analyse de données, envisagez de télécharger Anaconda. Fait tout le travail pour vous en termes de téléchargement de pandas et de numpy et de toutes les dépendances et de les emballer tous ensemble.