I am running a iPython notebook via the Anaconda Navigator app (version 1.1.0). When I want to import pandas it gives me a strange error. I thought the Anaconda app included the pandas package?
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-4-af55e7023913> in <module>()
----> 1 import pandas as pd
/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/__init__.py in <module>()
37 import pandas.core.config_init
38
---> 39 from pandas.core.api import *
40 from pandas.sparse.api import *
41 from pandas.stats.api import *
/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/api.py in <module>()
8 from pandas.core.common import isnull, notnull
9 from pandas.core.categorical import Categorical
---> 10 from pandas.core.groupby import Grouper
11 from pandas.core.format import set_eng_float_format
12 from pandas.core.index import (Index, CategoricalIndex, Int64Index,
/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/groupby.py in <module>()
16 DataError, SpecificationError)
17 from pandas.core.categorical import Categorical
---> 18 from pandas.core.frame import DataFrame
19 from pandas.core.generic import NDFrame
20 from pandas.core.index import (Index, MultiIndex, CategoricalIndex,
/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/frame.py in <module>()
37 create_block_manager_from_arrays,
38 create_block_manager_from_blocks)
---> 39 from pandas.core.series import Series
40 from pandas.core.categorical import Categorical
41 import pandas.computation.expressions as expressions
/Users/bertcarremans/anaconda/lib/python3.5/site-packages/pandas/core/series.py in <module>()
33 from pandas.core.internals import SingleBlockManager
34 from pandas.core.categorical import Categorical, CategoricalAccessor
---> 35 import pandas.core.strings as strings
36 from pandas.tseries.common import (maybe_to_datetimelike,
37 CombinedDatetimelikeProperties)
AttributeError: module 'pandas' has no attribute 'core'
The file name is pd.py or pandas.py. Another reason you may receive an error is if the file name of your script is pd.py or pandas.py. To resolve this error, you simply need to rename your file to something else like my_script.py or my_data.py or literally any other name.
Solution for AttributeError Errors and exceptions in Python can be handled using exception handling i.e. by using try and except in Python. Example: Consider the above class example, we want to do something else rather than printing the traceback Whenever an AttributeError is raised.
"Have you tried turning it off and on again?" (Roy of The IT crowd)
This happened to me today, which is why I ended up to this page. Seeing that error was weird since, recently, I have not made any changes in my Python environment. Interestingly, I observed that if I open a new notebook and import pandas
I would not get the same error message. So, I did shutdown
the troublesome notebook and started it again and voila it is working again!
Even though this solved the problem (at least for me), I cannot readily come up with an explanation as to why it happened in the first place!
There's this bug in the latest version of pandas (pandas 0.23) that gives you an error on importing pandas.
But this can be easily fixed by installing an earlier version of pandas (pandas 0.22) using the command pip install pandas==0.22
on Windows Command Prompt.
Apparently the error I got when trying to import pandas for the first time was ValueError: unknown locale: UTF-8
Trying to import again afterwards, gave another error as described in my question above.
I found the solution to solve the ValueError on IPython Notebook locale error
After updating my bash profile, the error AttributeError: module 'pandas' has no attribute 'core'
did not appear anymore.
There is an other weird reason this happens. If you have a file called pandas.py or a directory called pandas in the same or nested levels, that library is used instead and fails to work. Rename the folder and restart the env and it started working. Faced this
I had a similar issue since I installed pandas
using python -m pip install pandas --upgrade --user
which installed a conflicting version in my user python packages directory, masking the Anaconda installed version that other dependencies relied upon.
conda list | grep pandas
pandas == 0.23.4
python -m pip list | grep pandas
pandas == 0.24.0
So uninstalling the user directory masked version cleaned up the issue for me.
python -m pip uninstall pandas
For reference all possible python packages are installed in the directories listed from this command:
python -m site
Might be worth iterating through these and checking for duplicates.
Edit: Since my original answer I learnt you can run:
python -m pip list -v
And it shows the directory the library is installed. This often shows whether the library you want is in a virtual environment, conda environment, user directory, system site packages etc.
Try in your console
conda install pandas
and see what's the message given.
You are getting this is because you are using a Anaconda distribution of Jupyter notebook. So just do conda install pandas
restart your jupyter notebook
and rerun your cell. It should work.
If you are trying this on a Virtual Env try this
conda create -n name_of_my_env python
This will create a minimal environment with only Python installed in it. To put your self inside this environment run:2 source activate name_of_my_env
On Windows the command is:
activate name_of_my_env
The final step required is to install pandas. This can be done with the following command:
conda install pandas
To install a specific pandas version:
conda install pandas=0.20.3
To install other packages, IPython for example:
conda install ipython
To install the full Anaconda distribution:
conda install anaconda
If you need packages that are available to pip but not conda, then install pip, and then use pip to install those packages:
conda install pip
pip install django
Installing from PyPI
pandas can be installed via pip from PyPI.
pip install pandas
Installing with ActivePython
Hope this helps.
I have just solved this problem. Recently, I changed my language setting of my MacBook from English-UK to Chinese. And I suppose that setting will also change the setting in the "locale." Becuase when I switched back, I found that the setting of locale had been changed again, and I am fine to import the pandas again,.
So if you have changed the language setting recently, you may worth to have a try change it back.
I recently came across the same problem right after I installed Pandas 0.23 in Anaconda Prompt. The solution is simply to restart the Jupyter Notebook which reports the error. May it helps.
I face similar issue while importing TensorFlow
. If you are using Tensorflow which uses Pandas library, I suggest restarting your kernel of Anaconda
. This works for me.
I got the same error for pandas latest version. Then saw this warning
FutureWarning: 'pandas.tools.plotting.scatter_matrix' is deprecated, import 'pandas.plotting.scatter_matrix' instead.
This shall work for you.
I can confirm this issue is due to pandas 0.23.
Uninstall and then reinstall 0.22.
pip uninstall pandas
pip install pandas==0.22
Hope this could solve the problem.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With