22

After installing pypfopt and u-numpy, dataframe.info() command shows this error.

TypeError: Cannot interpret '<attribute 'dtype' of 'numpy.generic' objects>' as a data type

9 Answers 9

15

I happened to mix my versions and I encountered the problem today. I managed to fix it. Both codes in jupyter gave me an error: TypeError: Cannot interpret '<attribute 'dtype' of 'numpy.generic' objects>' as a data type

df.info() 
df.categorical_column_name.value_counts().plot.bar()

I got the error: TypeError: Cannot interpret '<attribute 'dtype' of 'numpy.generic' objects>' as a data type

This is how i fixed it

Inside jupyter: Check numpy version:

import numpy as np
print(np.__version__)

To upgrade:

!pip3 install numpy --upgrade

Inside Command line check numpy version: python

import numpy
print(numpy.__version__)

if versions are not the same choose whether to upgrade/downgrade: To upgrade:

$pip install numpy --upgrade

To downgrade just specify the version

If you have python environment installed: Go to the right folder: Check the installed version:

$pipenv --version

To verify if you have a pip environment installed for that folder: On your terminal Go to the folder and type:

$pipenv --version

If there is a pipenv it will show the version and if there is none it won't.

check numpy version

$python
>>> import numpy
#prints the version
>>> print(numpy__version__)

To upgrade the version:

>>>exit()

#To install the latest version don't specify the version

$pipenv install numpy

#if you want to downgrade specify the version

$pipenv install numpy=version_type

Do the same for pandas. Note that with pandas if your pandas environment is 1.2.3 on the jupyter notebook upgrade with !pip install pandas==1.2.3 or just !pip install pandas --upgrade --user.

Note that if the commands are giving you an error always include --user at the end of the command.

To create a new environment using miniconda and install updated packages follow the link [https://pandas.pydata.org/pandas-docs/stable/getting_started/install.html][1]

Run the following commands from a terminal window:

  1. 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:

source activate name_of_my_env On Windows the command is: 2. 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:

  1. conda install pandas=0.20.3

I prefer using the latest version of pandas 1.2.3

However the first method should solve your problem. Always restart your notebook by closing and reopening it.

I will stick around to see if you are winning. But this will resolve your problem. The problem is caused by the versions of numpy and pandas [1]: https://pandas.pydata.org/pandas-docs/stable/getting_started/install.html

Sign up to request clarification or add additional context in comments.

Comments

13

I fixed this type error downgrading numpy version to 1.16.5.

Try it!

Use code below in your jupyter notebook to downgrade your numpy:

!pip install numpy==1.16.5

My pandas version: 0.24.2

1 Comment

My pandas version is 1.0.x and also required numpy==1.16 to work..
6

downgrading to numpy==1.19.5 works

Use below command to downgrade in anaconda prompt:

python -m pip install numpy==1.19.5

1 Comment

You can use the jupyter notebook to downgrade the NumPy version. Use command: pip install numpy==1.19.5
4

Here's a link to the numpy issue associated with this error: https://github.com/numpy/numpy/issues/18355. A succinct fix is given there (in https://github.com/numpy/numpy/issues/18355#issuecomment-1029684903):

pip install --upgrade numpy
pip install --upgrade pandas

Comments

2

The issue is because of the non-compatibility of NumPy and pandas versions. I couldn't downgrade my NumPy for some odd reasons as others suggested from Anaconda. But found this link helpful Downgrading pandas to 1.3 and with the existing NumPy version set at 1.20.1, helped me to overcome this issue.

Comments

1

In my case, restarting the kernel fixed the error. Hope it saves someone time as I was reading pandas source code to figure out what the hell was happening :))

Comments

1

Just go to the terminal provided in Jupyter Notebook by clicking "New" and then "Terminal" inside "New" and type:

pip install pandas --upgrade

this will fix the error as it worked for me.

Comments

0

I fixed it by updating all packages in my Anaconda Navigator Environments

Comments

-1

U might have the latest version of NumPy which may not be compatible, so downgrade your NumPy version. I have downgraded to 1.17.2

2 Comments

Your answer could be improved with additional supporting information. Please edit to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers in the help center.
This does not provide an answer to the question. Once you have sufficient reputation you will be able to comment on any post; instead, provide answers that don't require clarification from the asker. - From Review

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.