'ImportError: No module named statsmodels

I downloaded the StatsModels source from this location.

Then untarred to

/usr/local/lib/python2.7/dist-packages

and per this documentation, did this

sudo python setup.py install

It installed but when I try to import

import statsmodels.api as sm

I get the following error

Traceback (most recent call last):
  File "/home/Astrophysics/Histogram_Fast.py", line 6, in <module>
import statsmodels.api as sm
ImportError: No module named statsmodels.api

I read a few post with a similar problem and checked that setuptools was installed and it was also in

/usr/local/lib/python2.7/dist-packages

I'm kinda of lost on this and would appreciate any help...

I am also running

numpy 1.6

so thats not the problem.



Solution 1:[1]

  • you shouldn't untar it to /usr/local/lib/python2.7/dist-packages (you could use any temporary directory)
  • you might have used by mistake a different python executable e.g., /usr/bin/python instead of the one corresponding to /usr/local/lib/python2.7

You should use pip corresponding to a desired python version (use python -V to check the version) to install it:

$ python -m pip install statsmodels 

It would allow you to upgrade/uninstall it easily.

Don't install as a root to avoid the risk of messing with system python installation by accident. You could use --user option or virtualenv instead.

Solution 2:[2]

As per documentation, you can install using the following commands

pip install --upgrade --no-deps statsmodels

using conda

conda install statsmodels

Then restart your jupyter notebook

if you facing an error like no module pasty stop your jupyter notebook and try the below command on terminal

pip install patsy

Don't forget to restart your jupyter notebook Let's hope

Solution 3:[3]

Install patsy:

pip install --upgrade patsy

Install statsmodels

pip install statsmodels

docs here

Solution 4:[4]

You have to upgrade the package pytest. I had the same issue importing in a Jupyter notebook on Ubuntu python 2.7

import statsmodels.api as sm

I also had to restart the Jupyter notebook.

sudo python -m pip install pytest --upgrade

Solution 5:[5]

Try installing using the path directly,

For example, pip install --user "downloaded_package_path"

Then try importing the statsmodels, import statsmodels.api as sm

Solution 6:[6]

Until 2022 many things changed, but if somebody have the same problem, here is what worked for me: on the left side of VS Code, there are many icons (explore, search etc). The last one is Pip manager. Click on it and search for the module to install it :) Much better than 9 years ago haha

Solution 7:[7]

Install statsmodels:

For Window users:

pip install statsmodels

For Mac users:

pip3 install statsmodels

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 Hcorg
Solution 2
Solution 3 jasonleonhard
Solution 4 Rajat Surana
Solution 5 Lakshmikanth
Solution 6 user17717499
Solution 7 Haroon Hayat