Answer a question

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

Answers

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

Logo

Python社区为您提供最前沿的新闻资讯和知识内容

更多推荐