Jupyter Notebook: что это за программа и для чего она нужна
Знакомимся с любимым инструментом аналитиков и ML-разработчиков.
Иллюстрация: Оля Ежак для Skillbox Media
Не всегда для программирования хочется запускать среду разработки, настраивать окружение и создавать новый проект. Иногда надо просто быстро написать функцию, запустить её, сохранить результат и поделиться им. Для этих целей отлично подходит Jupyter Notebook — интерактивный блокнот для работы с кодом и текстом.
В этой статье знакомимся с Jupyter Notebook, рассказываем, как его установить, и создаём свой первый «ноутбук».
Содержание
- Что такое Jupyter Notebook
- Где используют Jupyter Notebook
- Поддерживаемые языки программирования
- Как установить Jupyter Notebook
- Как работать с Jupyter Notebook
- Примеры
Что такое Jupyter Notebook
Jupyter Notebook — интерактивный блокнот, в котором можно выполнять код на разных языках программирования, добавлять к нему текст, изображения, инфографику и формулы. Его главная особенность в том, что пользователь сразу видит код и результат его работы, а фрагменты кода можно запускать по частям.
Записи в Jupyter Notebook называют «ноутбуками» — это файлы в формате .ipynb. Ими можно делиться с другими пользователями. Кроме того, проекты можно совместно просматривать и редактировать. Если надо поделиться «ноутбуком», то файл можно экспортировать в форматах PDF или HTML.
Где используют Jupyter Notebook
Jupyter Notebook отлично подходит для сфер, в которых важно быстро получить результат работы кода и чтобы всегда была возможность вернуться к нему без повторного выполнения:
- Анализ данных. Для аналитиков программирование — просто инструмент для решения задачи. Например, с помощью кода можно быстро найти взаимосвязи между событиями. Для такой задачи не хочется запускать IDE и настраивать полноценный проект.
- Научные исследования. Учёные используют интерактивный блокнот для сложных расчётов и построения графиков на основе результатов экспериментов.
- Обучение. Преподаватели часто запускают примеры кода в Jupyter Notebook. Так студенты видят задачу, код решения и результат в одном документе. А ещё можно на ходу переписывать код и видеть обновлённый результат.
- Эксперименты с кодом. Если вышло обновление Python, то его можно попробовать в интерактивном блокноте.
- Продвинутый калькулятор. Студенты используют Jupyter Notebook в качестве бесплатного и универсального калькулятора. С его помощью можно быстро решить уравнение, построить график и добавить комментарии для одногруппников и преподавателя. Но есть минус: надо уметь программировать.
Поддерживаемые языки программирования
Jupyter Notebook создавали для языков программирования Julia, Python и R, что отразилось в названии интерактивного блокнота. Со временем энтузиасты начали создавать специальные модули для подключения дополнительных языков программирования. Сейчас «ноутбуки» поддерживают Python, C/C++, Dart, Lua, JavaScript, Go, Matlab, PHP, Ruby, TypeScript и другие языки.
Каждый язык программирования подключается к интерактивному блокноту с помощью специального ядра (kernel). Чаще всего для установки ядра надо использовать команды пакетного менеджера PIP или Conda, а список всех ядер можно посмотреть в репозитории проекта.
Как установить Jupyter Notebook
Jupyter Notebook можно запускать локально на своём компьютере или в облаке. Первый способ подойдёт, если вы планируете работать с «ноутбуками» в одиночку. Для взаимодействия с коллегами удобнее использовать облачную версию.
Важно, чтобы у вас уже была установлена актуальная версия Python и пакетного менеджера PIP. Выполните в терминале команду python --version. Если в окне появится номер версии, то можно переходить к следующим шагам. Если терминал выдаёт ошибку или говорит, что не может найти указанный пакет, то установите Python по нашей инструкции.
Установка через PIP
Самый простой способ установить Jupyter Notebook — через пакетный менеджер PIP. Все питонисты используют его для установки сторонних библиотек и инструментов.
Шаг 1. Откройте терминал и выполните в нём команду pip install notebook. После этого запустится процесс установки.
Шаг 2. Введите команду jupyter notebook. Она запустит локальный Jupyter-сервер на вашем компьютере, а в браузере откроется новая вкладка с интерфейсом интерактивного блокнота.
Установка через Anaconda
Anaconda — бесплатный дистрибутив языков программирования Python и R, который включает в себя инструменты для машинного обучения и анализа данных. Помимо всего прочего, в нём есть и Jupyter Notebook.
Шаг 1. Перейдите на официальный сайт Anaconda и скачайте установщик для вашей операционной системы.
Шаг 2. Запустите скачанный файл и следуйте инструкциям установки.
Шаг 3. Откройте Anaconda Navigator на вашем компьютере и выберите в меню Jupyter Notebook или просто выполните в терминале команду jupyter notebook.
Установка через Miniconda
Miniconda — это облегчённая версия Anaconda, в которой есть только Python, менеджер пакетов Conda и минимальный набор зависимостей. Остальные пакеты, включая интерактивные блокноты, надо устанавливать отдельно.
Шаг 1. Перейдите на официальный сайт Anaconda и в разделе Miniconda скачайте установщик для вашей операционной системы.
Шаг 2. Запустите скачанный файл и следуйте инструкциям установки.
Шаг 3. Установите Jupyter Notebook с помощью команды conda install jupyter.
Шаг 4. Для запуска интерактивных блокнотов используйте команду jupyter notebook.
Запуск в Google Colab
Google Colab — бесплатный облачный сервис на базе Jupyter Notebook. С его помощью можно работать с интерактивными блокнотами онлайн.
Шаг 1. Перейдите на официальный сайт Google Colab и авторизуйтесь с помощью аккаунта Google.
Шаг 2. Нажмите кнопку Создать блокнот или откройте существующий файл с расширением .ipynb.
Как работать с Jupyter Notebook
Jupyter Notebook установили, теперь пришло время научиться с ним работать.
Настройка проекта
Шаг 1. Запустите Jupyter Notebook с помощью команды jupyter notebook и нажмите New в правом верхнем углу. В выпадающем списке выберите New Folder.
Шаг 2. Задайте папке имя, например, MyProject. Откройте её.
Шаг 3. Снова нажмите кнопку New в правом верхнем углу, но в выпадающем списке уже выберите пункт Python 3. Откроется новый «ноутбук».
Шаг 4. По умолчанию все «ноутбуки» называются Untitled. Нажмите на эту надпись и введите своё название, например MyFirstNotebook. Нажмите Rename.
Типы ячеек
Работа в Jupyter Notebook построена вокруг ячеек — блоков, которые можно редактировать и запускать. Есть несколько видов ячеек:
- Code — блоки, в которых содержится исполняемый код. Например, с их помощью можно написать выражение на Python, запустить его и сразу же увидеть результат ниже.
- Markdown — ячейки для форматирования текста. Если хотите добавить к коду подробное объяснение, то используйте этот блок.
- Raw — «сырые» данные, которые используют для настройки сложных сценариев импорта и визуализации данных.
Сохранение и экспорт
Чтобы сохранить «ноутбук» нажмите кнопку File в строке меню и выберите пункт Save and Checkpoint. Файл можно экспортировать, например, чтобы поделиться им с коллегами. Для этого нажмите File, перейдите в пункт Download as и выберите формат экспорта (PDF или HTML).
Примеры
Разберём несколько примеров работы с Jupyter Notebook.
Вычисление выражений
Выберем тип ячейки Code и впишем в неё математическое выражение 15 + 28. После этого запустим выполнение кода, и после блока появится результат вычисления. Таким образом можно запускать любой код на Python и сразу видеть вывод программы.
Форматирование текста
Назначим ячейке тип Markdown и введём следующий код:
Если нажать сочетание клавиш Shift + Enter, то текст отобразится с заданной разметкой:
Для форматирования текста Jupyter Notebook использует язык разметки Markdown. Основы его синтаксиса можно изучить с помощью нашей шпаргалки.
Работа с данными
Jupyter Notebook часто используют для анализа данных и построения графиков. Для этого нужны библиотеки Pandas и Matplotlib. Установить их можно с помощью команд pip install pandas и pip install matplotlib соответственно. Если вы пользуетесь дистрибутивом Anaconda, то эти библиотеки уже есть на вашем компьютере.
Теперь построим таблицу. Для этого создайте ячейку типа Code и скопируйте в неё следующий код:
Если его выполнить, то в «ноутбуке» появится наша таблица:
Теперь построим график с помощью функции pyplot из библиотеки Matplotlib. Для этого скопируйте в ячейку следующий фрагмент кода:
Запустим его и в результате получим параболу:
Что запомнить
- Jupyter Notebook — интерактивный блокнот, в котором можно выполнять код на разных языках программирования и добавлять к нему текст, изображения и инфографику.
- Jupyter создавали для Julia, Python и R, но сейчас блокнот поддерживает несколько десятков языков, включая JavaScript, C/C++ и PHP.
- Интерактивный блокнот можно установить локально или использовать в облаке, например, через Google Colab.
- Чаще всего Jupyter Notebook применяют в анализе данных, машинном обучении, научных исследованиях и образовании.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!