Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

528
Views
Running Jupyter notebook in a virtualenv: installed sklearn module not available

I have installed a created a virtualenv machinelearn and installed a few python modules (pandas, scipy and sklearn) in that environment.

When I run jupyter notebook, I can import pandas and scipy in my notebooks - however, when I try to import sklearn, I get the following error message:

import sklearn

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-8fd979e02004> in <module>()
----> 1 import sklearn

ImportError: No module named 'sklearn'

I am able to import all modules, at the command line - so I know they have been successfully installed:

(machinelearn) me@yourbox:~/path/to/machinelearn$ python -c "import pandas, scipy, sklearn"
(machinelearn) me@yourbox:~/path/to/machinelearn$ 

How can I import sklearn in my jupyter notebook running in a virtualenv?

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

You probably have not installed jupyter / IPython in your virtualenv. Try the following:

python -c "import IPython"

and check that the jupyter command found in your $PATH is the one from the bin folder of your venv:

which jupyter

For windows users in a powershell console, you can use the following to check that the jupyter command in your $env:Path is the one from the Scripts folder of you venv:

get-command jupyter

Edit: if this is the problem, just run python -m pip install jupyter in your venv.

Edit 2: actually you might also need:

python -m ipykernel install --user --name=my-virtualenv-name

and then switch the kernel named "my-virtualenv-name" in the jupyter user interface.

Edit 3: maybe the --user flag in the last command is a bad idea:

python -m ipykernel install --name=my-virtualenv-name
over 4 years ago · Santiago Trujillo Report

0

Another approach to take is to have one global jupyter installation, but to point to different kernels to run as the backend.

That approach is outlined here in their docs: http://help.pythonanywhere.com/pages/IPythonNotebookVirtualenvs

Copying below in case the link breaks: You can use a virtualenv for your IPython notebook. Follow the following steps:

Install the ipython kernel module into your virtualenv

workon my-virtualenv-name  # activate your virtualenv, if you haven't already
pip install ipykernel

Now run the kernel "self-install" script:

python -m ipykernel install --user --name=my-virtualenv-name

Replacing the --name parameter as appropriate.

You should now be able to see your kernel in the IPython notebook menu: Kernel -> Change kernel and be able so switch to it (you may need to refresh the page before it appears in the list). IPython will remember which kernel to use for that notebook from then on.

over 4 years ago · Santiago Trujillo Report

0

To use Jupyter notebook with virtual environment (using virtualenvwrapper) plus packages installed in that environment, follow steps below:

  1. create a virtual environment

    mkvirtualenv --no-site-packages --python=/your/python/path your_env_name
    
  2. Activate the virtual environment

    workon your_env_name
    
  3. Install Jupyter and other packages

    pip install jupyter, numpy
    
  4. Add a new kernel to your Jupyter config

    ipython kernel install --user --name=your_env_name
    
  5. Done. You may now use Jupyter notebook under the virtual environment.

    jupyter-notebook
    

Disclaimer: the question has been answered but is hidden in one of the replies. I googled and took sometime to find the right answer. So I just summarize it so someone having the same issue can easily follow.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!