42

I am using jupyter notebook and installed.

ipywidgets==7.4.2 widgetsnbextension pandas-profiling=='.0.0

and also I ran:

!jupyter nbextension enable --py widgetsnbextension

but when running:

from pandas_profiling import ProfileReport
profile = ProfileReport(df, title="Pandas Profiling Report", explorative=True)
profile.to_widgets()

I get the error:

ImportError: IProgress not found. Please update jupyter and ipywidgets. See https://ipywidgets.readthedocs.io/en/stable/user_install.html

Any idea why? Tried proposed solutions.

Sunderam Dubey
  • 1
  • 11
  • 20
  • 40
Cranjis
  • 1,590
  • 8
  • 31
  • 64

5 Answers5

44

I tried everything you mentioned in a new environment using conda and I had another issue related to the version of ipywidgets (a bug found in Github with comments saying that got solved after using last version). I solved the problem I had installing last version of ipywidgets. Here is my process:

  1. Create a new environment using conda (I use miniconda):
conda create --name teststackoverflow python=3.7
  1. Activate new environment:
conda activate teststackoverflow
  1. Install jupyter:
pip install jupyter
  1. Install all the libraries without specific versions to get the last ones:
pip install ipywidgets widgetsnbextension pandas-profiling
  1. Run jupyter notebook in the console to turn on the notebooks server and create a new notebook.
  2. Run this line in a new cell:
!jupyter nbextension enable --py widgetsnbextension

With the result:

Enabling notebook extension jupyter-js-widgets/extension...
      - Validating: OK
  1. Run some sample code to define df:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [1, 2, 3, 4]})
  1. Run the code you provided:
from pandas_profiling import ProfileReport
profile = ProfileReport(df, title="Pandas Profiling Report", explorative=True)
profile.to_widgets()

Final output looks good: Final result of running step number 8

bruno-uy
  • 1,647
  • 12
  • 20
  • can u pls elaborate the versions of ipywidgets, widgetsnbextension, pandas-profiling that worked well for you? – Cranjis Jun 21 '21 at 20:27
  • Sure: `ipywidgets==7.6.3`, `pandas-profiling==3.0.0` and `widgetsnbextension==3.5.1`. That's what you expected or do you need more information about how to install them? – bruno-uy Jun 21 '21 at 21:12
  • is it possible to export the report to pdf or html? – Cranjis Jun 22 '21 at 10:45
  • Yes, you can do `profile.to_file("your_report.html")`. If you want to download a PDF, just use the print function from the browser to save the HTML into a PDF. You can find more information [here](https://github.com/pandas-profiling/pandas-profiling). – bruno-uy Jun 22 '21 at 12:41
  • Step 4 was the most important part for me. Thanks! – E. Turok Mar 31 '23 at 04:34
23

this had worked for me (for all of you who prefer pip instead of conda..) in your virtualenv run

pip install ipywidgets
jupyter nbextension enable --py widgetsnbextension

or, if you prefer to run it in your notebook

!pip install ipywidgets
!jupyter nbextension enable --py widgetsnbextension

and in your notebook add

from ipywidgets import FloatProgress
Avi Avidan
  • 866
  • 8
  • 18
4

Installing ipywidgets and building Jupyter Lab did the trick for me.

  1. Make sure you activate the correct conda environment
  2. Install ipywidgets: conda install -c conda-forge ipywidgets
  3. To build Jupyter Lab, you need to have nodejs > 12.0.0 installed. Check the latest version number from Anaconda website and install nodejs specifying the package number e.g. conda install -c conda-forge nodejs=16.6.1
  4. Stop Jupyter Lab
  5. Build Juyter Lab: jupyter lab build
  6. Start Jupyter Lab
Kennethz3
  • 579
  • 1
  • 4
  • 4
2

I ran into the same error within the jupyter lab and I just installed ipywidgets using conda install -c conda-forge ipywidgets command.

amiref
  • 3,181
  • 7
  • 38
  • 62
1

I ran into the same error. On M1 mac, I change from tqdm.notebook import tqdm as tqdm to from tqdm import tqdm. Hope it helps. Original post: https://github.com/CosmiQ/solaris/issues/392#issuecomment-759238485

王之蔽
  • 11
  • 2