Импортер: IProgress не найден. Пожалуйста, обновите jupyter и ipywidgets, хотя они установлены

#pandas #jupyter-notebook #jupyter #ipywidgets #pandas-profiling

Вопрос:

Я использую ноутбук jupyter и установил

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

а еще я побежал:

 !jupyter nbextension enable --py widgetsnbextension
 

но когда руннинхг

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

Я получаю ошибку:

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

Есть идеи, почему?
Попробовал предложенные решения.

Ответ №1:

Я перепробовал все, что вы упомянули, в новой среде, используя conda , и у меня была еще одна проблема, связанная с версией ipywidgets (ошибка, обнаруженная в Github с комментариями, в которых говорится, что она была решена после использования последней версии). Я решил проблему, с которой столкнулся, установив последнюю версию ipywidgets . Вот мой процесс:

  1. Создайте новую среду с помощью conda (я использую миниконду):
 conda create --name teststackoverflow python=3.7
 
  1. Активируйте новую среду:
 conda activate teststackoverflow
 
  1. Устанавливать jupyter :
 pip install jupyter
 
  1. Установите все библиотеки без определенных версий, чтобы получить последние:
 pip install ipywidgets widgetsnbextension pandas-profiling
 
  1. Запустите jupyter notebook в консоли, чтобы включить сервер ноутбуков и создать новый ноутбук.
  2. Запустите эту строку в новой ячейке:
 !jupyter nbextension enable --py widgetsnbextension
 

С результатом:

 Enabling notebook extension jupyter-js-widgets/extension...
      - Validating: OK
 
  1. Запустите пример кода, чтобы определить df :
 import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3, 4], 'B': [1, 2, 3, 4]})
 
  1. Запустите предоставленный вами код:
 from pandas_profiling import ProfileReport
profile = ProfileReport(df, title="Pandas Profiling Report", explorative=True)
profile.to_widgets()
 

Конечный результат выглядит хорошо:
Конечный результат выполнения шага № 8

Комментарии:

1. можете ли вы, пожалуйста, уточнить версии ipywidgets, widgetsnbextension, профилирования панд, которые хорошо работали для вас?

2. Конечно: ipywidgets==7.6.3 , pandas-profiling==3.0.0 и widgetsnbextension==3.5.1 . Это то, что вы ожидали, или вам нужна дополнительная информация о том, как их установить?

3. можно ли экспортировать отчет в формат pdf или html?

4. Да, вы можете это сделать profile.to_file("your_report.html") . Если вы хотите загрузить PDF-файл, просто используйте функцию печати из браузера, чтобы сохранить HTML-файл в формате PDF. Более подробную информацию вы можете найти здесь .

Ответ №2:

это сработало для меня (для всех вас, кто предпочитает pip вместо conda..) в вашем виртуальном запуске

 pip install ipywidgets
jupyter nbextension enable --py widgetsnbextension
 

или, если вы предпочитаете запускать его в своем блокноте

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

и в своем блокноте добавь

 from ipywidgets import FloatProgress
 

Ответ №3:

Установка ipywidgets и создание лаборатории Jupyter сделали для меня то же самое.

  1. Убедитесь, что вы активировали правильную среду conda
  2. Установите ipywidgets: conda install -c conda-forge ipywidgets
  3. Чтобы создать лабораторию Jupyter, вам необходимо установить nodejs > 12.0.0. Проверьте номер последней версии с веб-сайта Anaconda и установите nodejs, указав номер пакета, например conda install -c conda-forge nodejs=16.6.1
  4. Остановите лабораторию Юпитера
  5. Постройте лабораторию соковыжималки: jupyter lab build
  6. Запустите лабораторию Jupyter

Ответ №4:

Я столкнулся с той же ошибкой в лаборатории jupyter и только что установил ipywidgets с помощью conda install -c conda-forge ipywidgets команды.