Обновление Statsmodels в Anaconda

#python #bash #jupyter-notebook #anaconda #statsmodels

#python #bash #jupyter-записная книжка #anaconda #statsmodels

Вопрос:

Основная проблема, с которой я сталкиваюсь, заключается в том, что когда я пытаюсь вызвать атрибут statsmodels.stats.proportion test_proportions_2indep в записной книжке Anaconda Jupyter в Mac OS, я получаю следующую ошибку:

 AttributeError: module 'statsmodels.stats.proportion' has no attribute 'test_proportions_2indep'
  

Я предполагаю, что это связано с тем, что Statsmodels не обновляется должным образом. Когда я вызываю statsmodels.__version__ , он говорит, что я 0.11.1 установлен в моей текущей среде, но версия на странице документации есть 0.12.1 .

Я предпринял следующие шаги:

  1. Я удалил Anaconda, удалил все соответствующие файлы и загрузил его снова. Я удалил и переустановил Statsmodels.
  2. Я попытался обновить Statsmodels с помощью следующих команд в Jupyter: ! conda update statsmodels -y , ! conda update statsmodels=0.12.1 -y , и ! conda install -c conda-forge statsmodels .
  3. Я просмотрел приложение Anaconda и попытался удалить и переустановить там Statsmodels, но столкнулся с ситуацией, когда нужно было удалить кучу разных пакетов, поэтому я думаю, что мое понимание того, как работает среда, не совсем соответствует скорости. Я не знаю, есть ли здесь решение или нет.

Наконец, я дал следующую команду ( ! conda install update statsmodels==0.12.1 -y ) и получил новую ошибку / ответ в командной строке:

 Collecting package metadata (current_repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: failed with initial frozen solve. Retrying with flexible solve.

PackagesNotFoundError: The following packages are not available from current channels:

  - statsmodels==0.12.1
  - update

Current channels:

  - https://repo.anaconda.com/pkgs/main/osx-64
  - https://repo.anaconda.com/pkgs/main/noarch
  - https://repo.anaconda.com/pkgs/r/osx-64
  - https://repo.anaconda.com/pkgs/r/noarch

To search for alternate channels that may provide the conda package you're
looking for, navigate to

    https://anaconda.org

and use the search bar at the top of the page.
  

Конечно, версия Statsmodels по-прежнему 0.10.1.

Итак: 1. Нужно ли обновлять Statsmodels для использования этого атрибута? и 2. Как мне его обновить?

Ответ №1:

В прошлом у меня было много проблем с Anaconda, когда я пытался обновить пакеты из базовой среды. Вот что я рекомендую:

Создайте свою собственную среду. Вы можете сделать это из графического интерфейса Anaconda или из командной строки следующим образом:

 conda create --name newenv
  

Теперь вы можете активировать эту среду с помощью следующего:

 conda activate newenv
  

Если вы хотите просмотреть все доступные вам среды:

 conda info --envs
  

Для меня это выводит следующее:

 base                     C:ProgramDataAnaconda3
myenv                    C:Usersjames.condaenvsmyenv
newenv                *  C:Usersjames.condaenvsnewenv
  

Вы можете сказать из * того, что я сейчас нахожусь в newenv .

Теперь я могу использовать pip , чтобы показать мою текущую установку statsmodels .

 pip show statsmodels
  

Для меня это показывает:

 Name: statsmodels
Version: 0.11.0
Summary: Statistical computations and models for Python
Home-page: https://www.statsmodels.org/
Author: None
Author-email: None
License: BSD License
Location: c:programdataanaconda3libsite-packages
Requires: numpy, scipy, pandas, patsy
Required-by:
  

Для обновления до последней и самой лучшей версии я просто использую conda update для ее обновления.

 conda update statsmodels
  

pip show statsmodels теперь показывает мне, что у меня установлена версия 0.12.1.

Я также настоятельно рекомендую чит-лист conda. В нем есть все, что нужно для командной строки, чтобы освоиться в conda.

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

1. Это невероятно понятно и выполнило свою работу! Спасибо!

2. Это здорово @KristianCanler, я действительно рад это слышать. Счастливого кодирования!