No module named 'scipy'

You are missing scipy package in your Python environment!

You got error message about missing Python package. The error happens when you try to import Python module scipy. The Python complains that scipy module can't be importend because its path is not present in your current Python path.

When using Python srcipt in your terminal your output with error message might look like this:

computer:~$

python -c "import scipy"

Traceback (most recent call last):
File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'scipy'

Are you using Python notebook? Then your code cell with error message looks similar to:

import scipy
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
Cell In[1], line 1
---->
1 import scipy

ModuleNotFoundError: No module named 'scipy'

3 ways to fix - No module named scipy

Don't worry. We will fix the issue. You need to install missing package. We will show you 3 ways of how it can be fixed:

  • - install scipy using pip
  • - install scipy using conda
  • - automatic install of scipy in MLJAR Studio

Why there are three ways to fix this issue? It all depends on which package manager are you using. The most common package manager is pip. The common choice, especially in Windows environments, is conda manager. There are also other Python package managers, for example Poetry, but we don't cover them in this article.

The last way to fix issue, is to use MLJAR Studio. It is a notebook based programming environment that can automatically detect missing Python packages and install them.

How to check if package manager is pip or conda

Are you not sure what package manager are you using? Please try the following command and if you goet the conda version displayed it means that you are using conda package manager:

computer:~$

conda --version

conda 23.11.0
If conda is missing in your environment you will get output similar to:
computer:~$

conda --version

Command 'conda' not found

Please try the below code cell if you are in Python notebook. If you get no error then you are using conda otherwise please use pip for installing new packages.

import sys
!conda list --prefix {sys.prefix}

Install scipy with pip

Please run the following command to install scipy with pip:

pip install scipy

If you are using virtual environment, please make sure that it is activated.

For Python notebook users, please use the following command:

import sys
!{sys.executable} -m pip install scipy

This will ensure that a new package is installed in Python from currently used notebook kernel. You will be able to import scipy package in your notebook.

It is worth to check the PyPi website of scipy. You can check there what is the current version and history of releases.

Install scipy with conda

The scipy package can be installed with the command:

conda install -c conda-forge scipy

If you are in Python notebook, please use the following code:

import sys
!conda install --yes --prefix {sys.prefix} -c conda-forge {entry.installName}

The above code cell ensures you that scipy is installed in the correct environment and will be accessable in your current notebook. Please check scipy conda-forge website to check latest version number and history of releases.

Automatic install of scipy in MLJAR Studio

MLJAR Studio is a notebook based programming environment. It offers a set of interactive Python code recipes to make coding super easy.

Each code recipe has information about required packages. If code recipe depends on scipy and it is not available in Python environment then you will get the below information.

Install packages

Please install below packages to use this code recipe.

scipy >= 1.13.0

Please wait a while for scipy package installation after clicking Install package button. You will see below message:

Install packages

Please install below packages to use this code recipe.

Please wait, package installation ...

After successful installation you will get information that package is available and you can use code recipe.

Required packages

scipy >= 1.13.0

You can focus on coding rather than fighting your python environment thanks to automatic package management.

What is scipy?

SciPy is an open-source Python library used for scientific and technical computing. It builds on the NumPy library and provides a wide range of functions for tasks such as optimization, integration, interpolation, eigenvalue problems, and statistical analysis. SciPy is particularly valuable for complex scientific and engineering applications due to its extensive set of algorithms and tools. It's widely used in research and data analysis to perform advanced mathematical operations and solve problems that require numerical computations.

Install more packages