img
img
24 февраля 2022
15 апреля 2022
7 мин
68

Jupyter Notebook: что это такое и как им пользоваться

Jupyter-ноутбуки применяют для визуализации данных в big data и data science.

img
Автор статьи
Виктория Дербенченко
Редактор
img

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. Это название блокнота.

Как создать блокнот в Jupyter Notebook

Создание блокнота в Jupyter Notebook

Каждый блокнот использует новую вкладку — открывайте хоть сотню проектов одновременно. Чтобы найти все рабочие блокноты, нажмите вкладку «Running». У запущенных в работу проектов будет зеленая иконка, у нерабочих — серая.

Ячейки (Cell). Откройте новый блокнот. Поле с зеленым контуром и надписью In [ ] — это ячейка со строкой ввода. Зеленый контур означает, что ячейка — в режиме редактирования.

Как редактировать ячейку в Jupyter Notebook

Редактирование ячейки в Jupyter Notebook

Ячейки — это ДНК ноутбука. Они делятся на кодовые и markdown.

Напишите выражение вывода, используя синтаксис Python 3. Нажмите «Run». Поздравляем, вы только что создали свой первый фрагмент кода!

Ячейки в Jupyter Notebook

Ячейки в Jupyter Notebook

Обратите внимание: In [ ] преобразовалось в In [1]. Это порядковый номер запуска ячейки. Синий контур означает командный режим. Первая ячейка в блокноте всегда кодовая.

Чтобы создать новую ячейку, нажмите «+» на панели инструментов. Вырезайте, копируйте, удаляйте и редактируйте ячейки с помощью вкладки Edit.

Горячие клавиши. Куда же без них! Полный список хоткеев — в разделе Help → Keyboard Shortcuts.

Список горячих клавиш в Ячейки в Jupyter Notebook

Горячие клавиши в Ячейки в Jupyter Notebook

Markdown. Это язык разметки текстов. Его используют для комментариев, заголовков и списков. А еще для конвертации текстов в формат HTML. Чтобы перейти в ячейку Markdown, нажмите раздел Code и выберите команду Markdown.

Заголовки создают с помощью символа «#». Один такой символ сделает крупный заголовок верхнего уровня, два — заголовок поменьше. Вот так:

# <h1>
## <h2>
### <h3>
#### <h4>
##### <h5>
###### <h6>

Cимвол «*» с двух сторон текста нужен для курсива. Два таких символа — для полужирного выделения. Списки создают при помощи тире и пробела для каждого пункта.

Язык разметки текстов Markdown

Разметка текстов Markdown

Ядра (Kernel). Ядро — вычислительный движок, который выполняет записанный код. Этот механизм контролирует все вычисления. Когда вы открываете новый блокнот и запускаете ячейку с кодом, ядро отображает вывод на экран. Каждый язык программирования использует отдельное ядро. Например, код Python — ipython.

Чтобы увидеть основные команды для ядра, зайдите во вкладку Kernel:

  • Interrupt останавливает работу конкретной ячейки;
  • Restart перезапускает ядро;
  • Restart & Clear Output перезапускает ядро и сбрасывает данные текущих ячеек;
  • Restart & Run All перезапускает ядро, сбрасывает данные текущих ячеек и снова запускает их в указанном порядке;
  • Reconnect нужен для повторного подключения к ядру;
  • Shutdown выключает ядро.

Jupyter notebook на практике

Начнем писать код и посмотрим, что из этого получится.

Название. Сначала дадим проекту имя. Поскольку мы тренируемся, назовем блокнот Test. Для этого зайдем во вкладку «File» и выберем команду «Rename». Либо дважды щелкнем по самому заголовку.

Как назвать проект в Jupyter notebook

Название проекта в Jupyter Notebook

Настройка. Первой настраиваем ячейку для импорта. Если мы хотим загрузить новые файлы, добавим их в режиме редактирования и перезапустим ячейку. Введем следующие команды:


import pandas as pd
import matplotlib.pyplot as plt
%pylab inline

Мы импортировали pandas для анализа данных и matplotlib для визуализаций. Команда %pylab inline нужна, чтобы дать ядру отмашку на использование графиков.

Сохранение и контрольная точка. Посмотрим на панель инструментов:

Работа с панелью инструментов в Jupyter notebook

Панель инструментов в Jupyter Notebook

Верхняя левая иконка — команда «Сохранить контрольную точку» (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, что нужно использовать именно их.

У нас получилась следующая таблица:

Таблица в Jupyter notebook

Таблица для построения графика

Графики. Теперь все готово к тому, чтобы построить график. Первым делом избавимся от индексов в первой колонке:

 data.set_index(“distance”, inplace=True) data.head() 

Наша таблица приобрела следующий вид:

Таблица без индексов в первой колонке в проекте в Jupyter notebook

Таблица без индексов в первой колонке

Теперь данные легко представить в виде соотношений осей x и y. Задаем необходимые команды:

 data.plot() plt.show() 

И любуемся полученным графиком:

Как построить график в Jupyter notebook

График показаний телескопа «Хаббл»

Коротко о jupyter notebook

  • Jupyter-ноутбук — веб-приложение для просмотра отдельных фрагментов кода в процессе написания.
  • Чаще всего jupyter-ноутбуки применяют для визуализации данных в big data и data science. Они поддерживают большинство современных языков программирования. Но шустрее всего работают на Python.
  • Запускают jupyter-ноутбук в облаке или на компьютере. Первый способ проще, но второй — эффективнее.
img
Подпишитесь на рассылку, чтобы Не упустить что-нибудь новое
Просто и понятно о том, как получить новую профессию


    Ещё по теме
    img
    Программирование
    IT-компания — это не только Google

    Рассказываем про «Тинькофф», «Билайн» и другие компании.

    16 мая 2022
    2 мин
    карьера
    img
    Программирование
    Как составить и оформить баг-репорт

    Указывайте в отчете только одну ошибку, прикладывайте скрины, сообщения и коды.

    04 мая 2022
    6 мин
    баг-репорт
    img
    Программирование
    Как работать со списками в Python

    Учимся добавлять и изменять элементы, объединять и копировать списки.

    02 мая 2022
    5 мин
    python
    списки
    img
    Программирование
    Цикл for в Java: что это, как с ним работать

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

    25 апреля 2022
    6 мин
    java
    циклы
    языки программирования
    img
    Программирование
    Как работать с модулем JSON в Python

    JSON часто применяют, когда разрабатывают API и веб-приложения.

    25 апреля 2022
    9 мин
    python
    языки программирования
    img
    Программирование
    Как IT-специалисту из России найти работу за рубежом в 2022 году

    Есть сервисы, платформы и телеграм-каналы с вакансиями по всему миру.

    21 апреля 2022
    6 мин
    востребованные профессии
    img
    Программирование
    Что такое HTML: основные теги

    С помощью HTML структурируют страницу на сайте, добавляют картинки, таблицы, списки.

    16 апреля 2022
    6 мин
    html (hypertext markup language)p Language)
    верстка сайтов
    img
    Программирование
    Как работает цикл for в Python

    Цикл for используют, когда количество повторов известно заранее.

    14 апреля 2022
    5 мин
    python
    циклы
    языки программирования
    img
    Программирование
    Комьюнити для разработчика

    Есть комьюнити на платформах, под эгидой компаний или самоорганизующиеся.

    07 апреля 2022
    6 мин
    общение
    сообщество
    img
    Программирование
    Гайд: как определить, какое направление в IT тебе подходит

    Обязанности и зарплата аналитика, Python- и Java-разработчиков и не только.

    01 апреля 2022
    9 мин
    выбор профессии
    гуманитарий в IT
    img
    Программирование
    Правильное питание на удаленке. Почему это важно?

    Правильное питание — это не о жестких диетах и полном отказе от любимых продуктов.

    01 апреля 2022
    7 мин
    удаленная работа
    img
    Программирование
    Как я нашла время на учебу, когда времени не было совсем

    Благодаря методу «круга-пирога» увидите свое время и возьмете его под контроль.

    30 марта 2022
    7 мин
    дистанционное обучение
    домашняя работа
    самоорганизация
    img
    Программирование
    9 причин, почему не получается внедрять полезные привычки

    Ищите мотивацию, хвалите себя, визуализируйте план и результат.

    30 марта 2022
    8 мин
    постановка цели
    самоорганизация
    img
    Программирование
    Как больше успевать: зачем есть по одной лягушке в день и как справиться со слоном

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

    30 марта 2022
    2 мин
    самоорганизация
    эффективность
    img
    Программирование
    Как поставить цель и не бросить на полпути

    Когда ставите цель, отталкивайтесь от проблемы и конкретизируйте решение.

    30 марта 2022
    6 мин
    постановка цели
    самоорганизация
    img
    Программирование
    Кто такой менеджер проектов, чем занимается и как им стать

    Этот специалист контролирует все этапы проекта и приводит его к успеху.

    30 марта 2022
    8 мин
    управление проектами
    img
    Программирование
    Как не угробить здоровье на удаленке

    Советы всем удаленщикам — больше двигаться, делать зарядку, разминку для глаз.

    30 марта 2022
    9 мин
    удаленная работа
    img
    Программирование
    Junior, Middle, Senior в разработке — кто есть кто и как перейти на уровень выше

    Junior зарабатывает от 40 000 ₽, Middle от 100 000 ₽, а Senior от 250 000 ₽ и выше.

    29 марта 2022
    12 мин
    junior
    middle
    senior
    img
    Программирование
    Как банковская служащая в 32 года с нуля перешла в IT и в 40 открыла свою компанию по разработке онлайн-игр

    Совет от героини: сделайте первый шаг, дальше будет проще; учитесь и идите вперед.

    29 марта 2022
    14 мин
    смена профессии
    смена сферы
    img
    Программирование
    Пять приложений, чтобы не отвлекаться от учебы и работы

    Фишки и стоимость Forest, WaterDo, SleepTown, Alarmy, Pomodoro Timer Lite.

    29 марта 2022
    5 мин
    самоорганизация
    img
    Программирование
    Самый краткий гид по специализациям программистов

    Программист fullstack получает до 550 000 ₽, а на тестировщика учатся 4–15 мес.

    29 марта 2022
    3 мин
    backend-разработка
    c++
    frontend-разработчик
    java-разработчик
    востребованные профессии
    инженер по тестированию
    img
    Программирование
    Язык SQL: что это такое и зачем он нужен

    SQL используют в банках, торговле, перевозках: везде, где много информации.

    29 марта 2022
    7 мин
    mysql
    базы данных
    img
    Программирование
    Как освоить c нуля IT-профессию и перейти на новую работу без опыта

    Сначала поставьте цель: выберите сферу и определите, кем видите себя через 10 лет.

    29 марта 2022
    6 мин
    выбор профессии
    смена сферы
    img
    Программирование
    Словарь IT-сленга

    Термины разработки, Scrum, неформального общения, организационных процессов.

    29 марта 2022
    13 мин
    сленг
    словарь
    img
    Программирование
    Подборка: 33 книги и подкаста для начинающих программистов

    Узнаете о работе программиста и поймете, как писать хороший код.

    28 марта 2022
    10 мин
    книга
    подкаст
    img
    Программирование
    Хакнуть мозг: как современные знания помогают мозгу развиваться и учиться

    Мозг меняется всю жизнь. Мы можем на него влиять: изучать новое, развивать навыки.

    28 марта 2022
    8 мин
    развитие мозга
    img
    Программирование
    Как совмещать работу, учебу, семью и быт: рассказ будущего тестировщика

    Помогает планирование, вера в то, что реально изменить жизнь, поддержка семьи.

    28 марта 2022
    8 мин
    курс обучения
    личная история
    онлайн-образование
    смена профессии
    тестирование
    img
    Программирование
    Что такое CSS и как с ним работать

    С помощью CSS задают цвет, размеры, анимацию, адаптируют сайт под устройства.

    16 марта 2022
    9 мин
    css
    img
    Программирование
    Как создать телеграм-бота на Python

    Python — самый популярный язык программирования в феврале 2022 года.

    16 марта 2022
    9 мин
    python
    img
    Программирование
    Какие профессии в IT подойдут гуманитарию

    Гуманитарию подойдут профессии тестировщика, веб-дизайнера и не только.

    15 марта 2022
    9 мин
    выбор профессии
    карьера
    img
    Программирование
    Frontend или backend: чем отличаются и какой вид разработки выбрать

    Фронтендер создает интерфейс продукта, бэкендер работает с серверной частью.

    15 марта 2022
    7 мин
    backend-разработка
    frontend
    img
    Программирование
    Кто такой Java-разработчик, чем занимается и как им стать

    Обязанности Java-разработчика — писать код, тестировать и улучшать его.

    15 марта 2022
    7 мин
    java
    java-разработчик
    карьера
    img
    Программирование
    Что такое IT-сфера и почему она сейчас так популярна

    IT-отрасль привлекает удаленкой, карьерным ростом, высоким доходом.

    04 марта 2022
    7 мин
    it
    карьера
    img
    Программирование
    Как установить Python на компьютер и начать на нём писать

    Воспользуйтесь Google Colab, онлайн-интерпретаторами или скачайте Python.

    04 марта 2022
    4 мин
    python
    языки программирования
    img
    Программирование
    Как создать приложение для Андроид самостоятельно с нуля: инструкция

    Используйте конструкторы no-code, Java или Kotlin, Android Studio.

    04 марта 2022
    8 мин
    андроид
    разработка
    img
    Программирование
    Postman: как пользоваться программой для тестирования API

    Бесплатный сервис позволяет писать тесты, поддерживает разные типы API.

    04 марта 2022
    6 мин
    api
    postman
    img
    Программирование
    Google Colab: что это такое и как с ним работать

    Colab используют, чтобы создавать код на Python прямо в браузере.

    04 марта 2022
    4 мин
    google colab
    img
    Программирование
    Как перейти в разработчики из другой профессии

    Освоить новую профессию реально с нуля в любом возрасте, главное — мотивация.

    03 марта 2022
    8 мин
    карьера
    разработка
    img
    Программирование
    Как помочь ребенку выбрать профессию

    Не выбирайте по принципу «чем проще, тем лучше» и уважайте желания ребенка.

    03 марта 2022
    7 мин
    карьера
    родителям
    img
    Программирование
    Нужно ли высшее образование программисту: сравниваем все «за и «против»

    Важнее опыт и проекты в портфолио, но иногда высшее образование все-таки нужно.

    02 марта 2022
    5 мин
    образование
    img
    Программирование
    Стоит ли переходить на удаленку: плюсы и минусы

    Сегодня удаленка доступна для разных сфер: ИТ, маркетинг, сервис, продажи.

    02 марта 2022
    6 мин
    удаленка
    img
    Программирование
    Какой язык программирования выбрать новичку

    Выбирайте по уровню спроса у работодателей и направлению в программировании.

    24 февраля 2022
    7 мин
    языки программирования
    img
    Программирование
    Фильмы про программистов: лучшие фильмы и сериалы про компьютерных гениев

    20 фильмов и сериалов для тех, кому интересен мир информационных технологий.

    24 февраля 2022
    7 мин
    фильмы
    img
    Программирование
    Фронтенд-разработчик: кто это такой и как им стать с нуля

    Frontend-разработчик создает внешнюю — пользовательскую часть веб-ресурса.

    24 февраля 2022
    8 мин
    frontend
    карьера
    img
    Программирование
    Backend-разработчик: кто это такой и чем он занимается

    Backend-разработчик отвечает за внутреннюю — серверную сторону веб-ресурса.

    24 февраля 2022
    9 мин
    backend
    карьера
    img
    Программирование
    Что такое спринты в программировании и как их выполнять

    Спринты используют в долгих проектах и сложных продуктах.

    24 февраля 2022
    5 мин
    agile
    scrum
    спринты в программировании
    img
    Программирование
    Как начать изучать Python

    Преимущества Python — понятный синтаксис и читаемость, готовые библиотеки.

    24 февраля 2022
    9 мин
    python
    языки программирования
    img
    Программирование
    Как развить soft skills

    Soft skills помогают развивать компетенции, осваивать новые тенденции в работе.

    24 февраля 2022
    11 мин
    soft skills
    саморазвитие
    img
    Программирование
    Как начать изучать Java

    На Java разрабатывают всё: от приложений и ПО до технологий Big Data.

    24 февраля 2022
    7 мин
    java
    java-разработчик
    языки программирования