Anaconda — диспетчер пакетов с открытым исходным кодом, диспетчер среды и дистрибутив языков программирования Python и R. Он широко используется для анализа данных, машинного обучения, крупномасштабной обработки данных, научных вычислений и предиктивной аналитики.
Anaconda включает набор из более 1000 пакетов для анализа данных. Доступны бесплатная версия и платная версия для организаций. Дистрибутив Anaconda поставляется с утилитой командной строки conda
. Дополнительную информацию об Anaconda и conda
можно найти в официальной документации по Anaconda.
В этом обучающем модуле мы установим версию Anaconda для Python 3 на сервере Ubuntu 20.04.
Прежде чем начать изучение настоящего обучающего руководства, необходимо настроить на сервере стандартного пользователя без прав root с привилегиями sudo.
Для выполнения предварительных требований нужно выполнить указания нашего руководства по начальной настройке сервера Ubuntu 20.04.
Для установки Anaconda лучше всего загрузить последнюю версию скрипта bash установки Anaconda, проверить этот скрипт и запустить его.
Последнюю версию Anaconda для Python 3 можно найти на странице загрузки Anaconda. На момент написания последняя версия 2020.02, но если доступна более поздняя стабильная версия, следует использовать ее.
Далее перейдите к директории /tmp
на сервере. Этот каталог хорошо подходит для загрузки временных элементов, таких как скрипт bash Anaconda, которые нам не понадобятся после запуска.
- cd /tmp
Используйте curl
для загрузки ссылки, скопированной с сайта Anaconda: Чтобы ускорить работу, мы будем использовать для вывода файл anaconda.sh
.
- curl https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh --output anaconda.sh
Теперь мы можем проверить целостность данных программы установки посредством проверки криптографического хэша через контрольную сумму SHA-256. Мы используем команду sha256sum
с именем файла скрипта в качестве аргумента:
- sha256sum anaconda.sh
Результаты выполнения будет выглядеть примерно так:
Output2b9f088b2022edb474915d9f69a803d6449d5fdb4c303041f60ac4aefcc208bb anaconda.sh
Необходимо проверить вывод на соответствие хэшу Anaconda с Python 3 на странице 64-битной версии Linux для соответствующей версии Anaconda. Если вывод соответствует хэшу, отображаемому в строке sha2561
, вы можете продолжать.
Теперь мы можем запустить скрипт:
- bash anaconda.sh
Вывод должен выглядеть следующим образом:
Output
Welcome to Anaconda3 2020.02
In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>
Нажмите ENTER
, чтобы продолжить, а затем нажмите ENTER
для чтения лицензии. Когда вы прочитаете лицензию, вам будет предложено принять ее условия:
OutputDo you approve the license terms? [yes|no]
Если вы согласны, введите yes
.
Теперь вам будет предложено выбрать место для установки. Вы можете нажать ENTER
, чтобы принять место установки по умолчанию, или указать другое место установки.
OutputAnaconda3 will now be installed into this location:
/home/sammy/anaconda3
- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below
[/home/sammy/anaconda3] >>>
После этого установка будет продолжена. Процедура установки может занять некоторое время.
После завершения установки появится следующий экран:
Output...
Preparing transaction: done
Executing transaction: done
installation finished.
Do you wish the installer to initialize Anaconda3
by running conda init? [yes|no]
[no] >>>
Введите yes
, чтобы выполнить инициализацию Anaconda3. На экран будут выведены изменения, внесенные в разные каталоги. В одной из выводимых строк будет содержаться благодарность за установку Anaconda.
Output...
Thank you for installing Anaconda3!
...
Теперь вы можете активировать установку, используя файл ~/.bashrc
:
- source ~/.bashrc
После этого вы перейдете в базовую
среду програмирования Anaconda по умолчанию, и командная строка изменится следующим образом:
-
Хотя Anaconda поставляется в комплекте с этой базовой
средой программирования по умолчанию, вам потребуются отдельные среды для ваших программ и их изоляции друг от друга.
Вы можете дополнительно проверить установку с помощью команды conda
, например, с флагом list
:
- conda list
На экран будут выведены все пакеты. доступные через установку Anaconda:
Output# packages in environment at /home/sammy/anaconda3:
#
# Name Version Build Channel
_ipyw_jlab_nb_ext_conf 0.1.0 py37_0
_libgcc_mutex 0.1 main
alabaster 0.7.12 py37_0
anaconda 2020.02 py37_0
...
Мы установили Anaconda и теперь можем перейти к настройке сред Anaconda.
Виртуальные среды Anaconda позволяют организовывать проекты по версиям Python и требуемым пакетам. Для каждой настраиваемой среды Anaconda можно указать версию Python и поместить все связанные файлы программирования в этот каталог.
Вначале можно проверить, какие версии Python доступны нам для использования:
- conda search "^python$"
На экран будет выведен перечень разных доступных версий Python, включая версии Python 3 и Python 2. Поскольку в этом обучающем модуле мы используем Anaconda с Python 3, у вас будет доступ только к версиям пакетов Python 3.
Создадим среду, используя самую последнюю версию Python 3. Для этого присвоим значение version 3 аргументу python
. Мы назовем среду my_env, но возможно вы захотите использовать описательное название среды, особенно если вы используете несколько сред для доступа к разным версиям Python.
- conda create --name my_env python=3
На экран будет выведена информация о том, что мы загрузили, и какие пакеты будут установлены, а затем вам нужно будет ввести y
или n
. Если вы согласны, введите y
.
После этого утилита conda
доставит пакеты для среды и сообщит о завершении доставки.
Для активации вашей новой среды введите следующую команду:
- conda activate my_env
После активации среды префикс комадной строки изменится, показывая, что вы находитесь не в базовой
среде, а в только что созданной.
-
В среде вы можете проверить использование желаемой версии Python:
- python --version
OutputPython 3.8.2
Когда вы будете готовы отключить свою среду Anaconda, введите:
- conda deactivate
Вы можете заменить слово source
на .
, и это не повлияет на результат.
Для работы с конкретной версией Python вы можете передать в аргумент python
номер этой версии, например 3.5
:
- conda create -n my_env35 python=3.5
Вы можете проверить все настроенные среды с помощью следующей команды:
- conda info --envs
Output# conda environments:
#
base * /home/sammy/anaconda3
my_env /home/sammy/anaconda3/envs/my_env
my_env35 /home/sammy/anaconda3/envs/my_env35
Звездочкой обозначается текущая активная среда.
Каждая среда, создаваемая с помощью conda create
, имеет несколько пакетов по умолчанию:
_libgcc_mutex
ca-certificates
certifi
libedit
libffi
libgcc-ng
libstdcxx-ng
ncurses
openssl
pip
python
readline
setuptools
sqlite
tk
wheel
xz
zlib
Для добавления дополнительных пакетов, например numpy
, вы можете использовать следующую команду:
- conda install --name my_env35 numpy
Если вы знаете, что вам потребуется среда numpy
после создания, вы можете добавить ее в команду conda create
:
- conda create --name my_env python=3 numpy
Если вы прекратите работу над каким-либо проектом, и вам больше не нужна будет соответствующая среда, вы можете удалить ее. Для этого введите следующее:
- conda remove --name my_env35 --all
Теперь при вводе команды conda info --envs
удаленная среда больше не будет отображаться в списке.
Необходимо регулярно проверять статус обновления Anaconda, чтобы использовать все самые последние версии пакетов.
Для этого нужно предварительно обновить утилиту conda
:
- conda update conda
Введите y
в диалоге, чтобы продолжить обновление.
После обновления conda
вы можете обновить дистрибутив Anaconda:
- conda update anaconda
Введите y
в диалоге, чтобы продолжить.
Так вы будете гарантированно использовать самые последние версии conda
и Anaconda.
Если вы больше не хотите использовать Anaconda, запустите модуль anaconda-clean
, который удалит файлы конфигурации при удалении Anaconda.
- conda install anaconda-clean
Введите y
в диалоге.
После установки вы можете запустить следующую команду. Перед удалением каждого компонента вам нужно будет ввести y
в диалоге. Если вы не хотите проходить через диалоги, добавьте флаг --yes
в конец команды:
- anaconda-clean
При этом в вашем домашнем каталоге будет создана папка резервного копирования с именем .anaconda_backup
:
OutputBackup directory: /home/sammy/.anaconda_backup/2020-05-06T024432
Теперь вы можете удалить весь каталог Anaconda с помощью следующей команды:
- rm -rf ~/anaconda3
В заключение вы можете удалить строку PATH из файла .bashrc
, добавленного Anaconda. Для этого откройте nano или другой текстовый редактор:
- nano ~/.bashrc
Прокрутите файл до конца (если установка выполнена недавно) или нажмите CTRL + W
для поиска Anaconda. Удалите или закомментируйте блок Anaconda:
...
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/sammy/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/sammy/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/sammy/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/sammy/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
Закончив редактирование файла, нажмите CTRL + X
для выхода и y
для сохранения изменений.
Удаление Anaconda с вашего сервера завершено. Если вы не отключили базовую
среду программирования, вы можете выйти и снова войти на сервер для ее удаления.
В этом обучающем модуле вы выполнили установку Anaconda, поработали с утилитой командной строки conda
, настроили среды, выполнили обновление Anaconda и удалили Anaconda.
Вы можете использовать Anaconda для управления рабочими задачами анализа данных, научных вычислений, аналитики и обработки больших объемов данных. Теперь вы можете ознакомиться с обучающими модулями по анализу данных и машинному обучению, чтобы узнать больше о различных доступных инструментах и проектах, которыми вы можете заняться.
Также мы предлагаем бесплатную электронную книгу по машинному обучению «Проекты машинного обучения на Python».
Thanks for learning with the DigitalOcean Community. Check out our offerings for compute, storage, networking, and managed databases.
This textbox defaults to using Markdown to format your answer.
You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!