Jupyter notebook — веб-приложение с открытым исходным кодом. Каждый разработчик может разбить в нем код на куски и работать над ними в произвольном порядке: писать и проверять функции, загружать файл в память и обрабатывать содержимое. Рассказываем, как написать свой первый код уже сегодня.
Что такое jupyter notebook и где он применяется
Jupyter-ноутбук — интерактивная среда разработки с «живым» кодом. В ней показана визуализация работы. Если разработчик хочет посмотреть на график или формулу, он пишет нужную команду в соответствующей ячейке. Такой подход экономит время и помогает избежать ошибок.
Чаще всего jupyter-ноутбуки применяют в машинном обучении, например, при подготовке нейросетей. Еще их используют специалисты по data science и начинающие программисты на Python.
Научитесь писать чистый и стабильный код на Python на курсе от онлайн-университета Skypro. У вас будет 400 часов теории и практики, 4 проекта в портфолио. Смотрите 40-минутные видеолекции в любое удобное время и выполняйте практические задания с реальными инструментами разработчика. На вопросы ответит наставник — в чате или на еженедельных вебинарах. В конце получите диплом о переподготовке и пожизненный доступ к курсу.
Какие языки поддерживаются
Jupyter — преемник проекта IPython Notebook. Сегодня jupyter-ноутбуки умеют работать не только с Python. Появились ядра и для других языков. Например:
- Ruby,
- Julia,
- Perl,
- Matlab,
- R.
У каждого ядра есть отдельная инструкция по установке. Для запуска кода на другом языке используют специальные magic-команды. Они расширяют функционал Python.
Виды jupyter-notebook
Jupyter-ноутбук запускают на любом сервере с доступом по ssh или http.
Запуск на компьютере. Для работы с ноутбуком нужен Python с загруженной библиотекой Jupyter. Чтобы установить программу, введите в окно терминала следующую команду:
pip3 install jupyter
Это активирует установочную утилиту — pip. Ее задачи — распаковывать, устанавливать и обновлять пакеты программ.
Другой способ запустить ноутбук на компьютере — загрузить Anaconda. Это архивированный набор файлов с полезным софтом: Python, Jupyter, NumPy, pandas, Matplotlib.
Запуск в облаке. Если хотите настрочить код здесь и сейчас, запустите ноутбук в облаке. С сервисами по типу Google Colab пишут на Python в любом браузере. Никаких специальных настроек не требуется — следуйте указаниям и создавайте код.
Минус такого подхода: программы на локальном сервере работают быстрее облачных. Кроме того, у последних ограниченный набор библиотек. Если понадобятся дополнительные ресурсы, весь проект пойдет насмарку.
Создание первого блокнота
Создайте новый блокнот — так называется проект в Jupyter.
Запуск Jupyter. Используйте команду: jupyter notebook. Она откроет новую вкладку в браузере и запустит программу. URL-адрес приложения будет выглядеть так: https://localhost:8888/tree.
Интерфейс Notebook. Все блокноты в каталоге помечены иконкой записной книжки. Чтобы создать новый, выберите в верхнем меню команды «New» → «Python 3». Рядом с логотипом Jupyter появится надпись Untitled. Это название блокнота.
Каждый блокнот использует новую вкладку — открывайте хоть сотню проектов одновременно. Чтобы найти все рабочие блокноты, нажмите вкладку «Running». У запущенных в работу проектов будет зеленая иконка, у нерабочих — серая.
Ячейки (Cell). Откройте новый блокнот. Поле с зеленым контуром и надписью In [ ] — это ячейка со строкой ввода. Зеленый контур означает, что ячейка — в режиме редактирования.
Ячейки — это ДНК ноутбука. Они делятся на кодовые и markdown.
Напишите выражение вывода, используя синтаксис Python 3. Нажмите «Run». Поздравляем, вы только что создали свой первый фрагмент кода!
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Обратите внимание: In [ ] преобразовалось в In [1]. Это порядковый номер запуска ячейки. Синий контур означает командный режим. Первая ячейка в блокноте всегда кодовая.
Чтобы создать новую ячейку, нажмите «+» на панели инструментов. Вырезайте, копируйте, удаляйте и редактируйте ячейки с помощью вкладки Edit.
Горячие клавиши. Куда же без них! Полный список хоткеев — в разделе Help → Keyboard Shortcuts.
Markdown. Это язык разметки текстов. Его используют для комментариев, заголовков и списков. А еще для конвертации текстов в формат HTML. Чтобы перейти в ячейку Markdown, нажмите раздел Code и выберите команду Markdown.
Заголовки создают с помощью символа «#». Один такой символ сделает крупный заголовок верхнего уровня, два — заголовок поменьше. Вот так:
# <h1>
## <h2>
### <h3>
#### <h4>
##### <h5>
###### <h6>
Cимвол «*» с двух сторон текста нужен для курсива. Два таких символа — для полужирного выделения. Списки создают при помощи тире и пробела для каждого пункта.
Ядра (Kernel). Ядро — вычислительный движок, который выполняет записанный код. Этот механизм контролирует все вычисления. Когда вы открываете новый блокнот и запускаете ячейку с кодом, ядро отображает вывод на экран. Каждый язык программирования использует отдельное ядро. Например, код Python — ipython.
Чтобы увидеть основные команды для ядра, зайдите во вкладку Kernel:
- Interrupt останавливает работу конкретной ячейки;
- Restart перезапускает ядро;
- Restart & Clear Output перезапускает ядро и сбрасывает данные текущих ячеек;
- Restart & Run All перезапускает ядро, сбрасывает данные текущих ячеек и снова запускает их в указанном порядке;
- Reconnect нужен для повторного подключения к ядру;
- Shutdown выключает ядро.
Jupyter notebook на практике
Название. Сначала дадим проекту имя. Поскольку мы тренируемся, назовем блокнот Test. Для этого зайдем во вкладку «File» и выберем команду «Rename». Либо дважды щелкнем по самому заголовку.
Настройка. Первой настраиваем ячейку для импорта. Если мы хотим загрузить новые файлы, добавим их в режиме редактирования и перезапустим ячейку. Введем следующие команды:
import pandas as pd import matplotlib.pyplot as plt %pylab inline
Мы импортировали pandas для анализа данных и matplotlib для визуализаций. Команда %pylab inline нужна, чтобы дать ядру отмашку на использование графиков.
Эти инструменты применяют в своей работе аналитики данных. Визуализация — важная часть их задач. Потому что нужно не только обработать информацию и сделать выводы — важно наглядно представить результаты коллегам из других отделов или руководству. Этому можно научиться на курсе Skypro «Аналитик данных». Визуализации результатов анализа там посвящен отдельный блок. Научитесь делать это с помощью языка Python, чтобы цифры в графиках и диаграммах автоматически подтягивались из нужных таблиц и обновлялись.
Сохранение и контрольная точка. Посмотрим на панель инструментов:
…
Верхняя левая иконка — команда «Сохранить контрольную точку» (Ctrl + S). Контрольная точка — текстовый файл. В нем — содержимое блокнота в формате JSON. Данные обновляются при каждом новом сохранении. То есть контрольная точка — это резервное хранилище на случай форс-мажоров. Например, если по клавиатуре внезапно пробежит кот.
Изучение набора данных. Создадим новый проект на основе реальных данных — показаний космического телескопа «Хаббл». Ячейка для импорта у нас уже настроена. Осталось загрузить таблицу.
data = pd.read_csv(“hubble_data.csv”) data.head()
Как видите, прочесть файл csv можно с помощью одной команды: read_csv(). Следующая — head() выводит данные на экран. По умолчанию функция head() показывает только первые пять строк. Нам нужно больше. Поэтому преобразуем команду в head(25), где 25 — искомое число.
Pandas — умная библиотека. Она распознает заголовки и отображает эти данные в ячейке. Если заголовков нет, пропишите их в коде
headers = [“dist”,”rec_vel”] data_no_headers = pd.read_csv(“hubble_data_no_headers.csv”, names=headers)
— пишем код в одну строчку.
data_no_headers.head()
Headers — наши собственные заголовки. Команда names=headers сообщает Pandas, что нужно использовать именно их.
У нас получилась следующая таблица:
Графики. Теперь все готово к тому, чтобы построить график. Первым делом избавимся от индексов в первой колонке:
data.set_index(“distance”, inplace=True) data.head()
Наша таблица приобрела следующий вид:
Теперь данные легко представить в виде соотношений осей x и y. Задаем необходимые команды:
data.plot() plt.show()
И любуемся полученным графиком:
Коротко о jupyter notebook
- Jupyter-ноутбук — веб-приложение для просмотра отдельных фрагментов кода в процессе написания.
- Чаще всего jupyter-ноутбуки применяют для визуализации данных в big data и data science. Они поддерживают большинство современных языков программирования. Но шустрее всего работают на Python.
- Запускают jupyter-ноутбук в облаке или на компьютере. Первый способ проще, но второй — эффективнее.
Добавить комментарий