'Jupyter Notebook: no module named pandas
I've searched through other questions but have not found anything that has helped (most just suggest you do install pandas with conda or pip). In my jupyter notebook I'm trying to import pandas (import pandas as pd)
but I'm getting the following error:
ModuleNotFoundError: No module named 'pandas'
Some pertinent information:
- I'm using python3
- I've installed pandas using
conda install pandas - My conda environment has pandas installed correctly. After activating the environment, I type
pythoninto the terminal and from there I can successfully import pandas and use it appropriately. This leads me to believe that it is an issue with my jupyter notebook.
Solution 1:[1]
You can try: which conda and which python to see the exact location where conda and python was installed and which was launched.
And try using the absolute path of conda to launch jupyter.
For example, /opt/conda/bin/jupyter notebook
Solution 2:[2]
Try this for python3
sudo pip3 install pandas
Solution 3:[3]
For me on Mac OSX, this was solved by installing jupyter using pip, rather than homebrew
pip3 install jupyter
Then the jupyter notebook has access to all python packages, including pandas.
Another option would be to install pandas inside of the jupyter notebook:
!pip install pandas
Solution 4:[4]
Its seems using homebrew installs for packages dependancies of home brew formulas are not handled by home brew well. Mostly path issues as installs are in different locations vs pip3, I also had tried installing pandas thru nb with !pip3, but I got errors that is was already satisfied meaning it was already installed just not importing. I uninstalled homebrew jupyterlab and used pip3 instead and all worked proper as a work around.
Solution 5:[5]
The default kernel in jupyter notebook points the python that is different to the python used inside the terminal.
You could check using which python
So the packages installed by conda lives in different place compared to the python that is used by the jupyter notebook at default.
To fix the issue, both needs to be same.
For that create a new kernel using ipykernel. syntax: python -m ipykernel install --user --name custom_name --display-name "Python (custom_name)"
After that, check the custom kernel and the path of the python used. jupyter kernel list --json
Finally, Restart the jupyter notebook. And change the kernel to the new custom_kernel.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | kingbase |
| Solution 2 | |
| Solution 3 | |
| Solution 4 | soundboyselecta |
| Solution 5 | Sanjog Thapa |
