Важность анализа данных неуклонно растет во всех отраслях. Наличие надлежащих инструментов анализа данных и визуализации стало как никогда важным. Jupyter Notebooks — один из ведущих инструментов с открытым исходным кодом для разработки и управления аналитикой данных.
Первоначально Jupyter начал свою жизнь как ответвление проекта iPython в 2014 году и превратился в полноценную интерактивную платформу для анализа данных. Jupyter, управляемый некоммерческой организацией Project Jupyter, стремится предоставить наиболее полную платформу для анализа данных.
В этой статье мы покажем вам, как установить и настроить локальную среду Jupyter. Вы можете использовать это руководство как идеальную отправную точку для начала работы по анализу данных.
- Что такое блокнот Jupyter?
- Установка Jupyter Notebook (JupyterLab)
- Установить через Pipenv
- Установить с помощью инструментария Anaconda Data Science Toolkit
- Создание записной книжки
- Компоненты notebook Jupyter
- Файл ipynb
- Ядро ноутбука
- Ячейки в записной книжке
- Начало работы с аналитикой данных
- Шаг 1
- Шаг 2
- Шаг 3
- Шаг 4
- Шаг 5
- ШАГ 6
- Созданный график
- Начните анализ данных с Jupyter
Что такое блокнот Jupyter?
Jupyter Notebook — это веб-приложение с открытым исходным кодом, которое предоставляет интерактивную вычислительную среду. Он создает документы (записные книжки), которые объединяют как входные (код), так и выходные данные в один файл. Он предлагает единый документ, который содержит:
- Визуализации
- Математические уравнения
- Статистическое моделирование
- Повествовательный текст
- Любые другие мультимедийные материалы
Такой подход с использованием единого документа позволяет пользователям разрабатывать, визуализировать результаты и добавлять информацию, диаграммы и формулы, которые делают работу более понятной, повторяемой и доступной для совместного использования.
Ноутбуки Jupyter поддерживают более 40 языков программирования, в основном на Python. Поскольку это бесплатный инструмент с открытым исходным кодом, любой может свободно использовать его для своих проектов в области науки о данных. Есть два варианта записной книжки Jupyter:
- Jupyter Classic Notebookсо всеми упомянутыми выше возможностями.
- JupyterLab, новый интерфейс ноутбука нового поколения, разработанный, чтобы быть гораздо более расширяемым и модульным, с поддержкой широкого спектра рабочих процессов от науки о данных, машинного обучения и научных вычислений.
Сегодня JupyterLab — это блокнот по умолчанию для любого проекта Jupyter.
Установка Jupyter Notebook (JupyterLab)
Есть несколько способов установить и использовать Jupyter Notebooks, начиная от установки через conda, mamba, pip, pipenv или даже как контейнер Docker.
В этом разделе мы обсудим два метода установки Jupyter Notebooks в вашей локальной среде. Мы будем использовать Windows в качестве среды операционной системы для настройки JupyterLab.
Установить через Pipenv
Pipenv позволяет пользователям создавать детерминированную воспроизводимую виртуальную среду с надлежащим управлением зависимостями для проектов Python. Поскольку Jupyter поставляется в виде пакета pip, мы можем просто установить его в этой виртуальной среде.
Во-первых, давайте создадим папку, которая действует как виртуальная среда. В этом примере у нас есть папка с именем «jupyter_notebook», которая будет использоваться для создания среды с помощью Pipenv.
Просто выполните следующую команду, чтобы открыть эту папку и установить версию Python 3.8. Однако для этого мы можем использовать любую поддерживаемую версию Python.
pipenv –python 3.8
Затем выполните следующую команду, чтобы установить пакет Jupyter через pip:
pipenv install jupyterlab
Наконец, мы можем запустить JupyterLab с помощью команды run.
pipenv run jupyter lab
После запуска JupyterLab мы сможем получить доступ к установке JupyterLab через предоставленный URL-адрес ( https: // localhost: 8888 ).
Таким образом, метод Pipenv предлагает изолированную среду JupyterLab для работы без конфликта с:
- Любой другой проект Python
- Настройки
- Пакеты, установленные глобально
Установить с помощью инструментария Anaconda Data Science Toolkit
Anaconda — это дистрибутив языков программирования Python и R с открытым исходным кодом, цель которого — упростить развертывание и управление пакетами. Поставляется со своими собственными:
- Система управления пакетами (conda)
- Возможности виртуальной среды
- Пакеты программного обеспечения, предназначенные для проектов в области науки о данных
Индивидуальная версия anaconda позволяет быстро настроить локальную среду обработки данных, просто установив установочный пакет anaconda.
Теперь давайте установим Jupyter Notebook через Anaconda. Сначала перейдите на веб-сайт Anaconda и загрузите соответствующий установочный пакет Individual Edition для вашей операционной системы.
Затем установите программное обеспечение на локальный компьютер с помощью установщика (пакет.exe).
После этого откройте только что установленное приложение под названием Anaconda Navigator после завершения установки. Это графический интерфейс, используемый для установки приложений и пакетов для среды conda. Вы заметите, что и Jupyter Notebook, и JupyterLab доступны в разделе приложений Anaconda Navigator.
Затем выберите предпочитаемый тип ноутбука и установите его. После этого нажмите кнопку «Запустить», чтобы запустить Jupyter Notebook. Откроется окно браузера с открытой записной книжкой.
По умолчанию Juptyper получит доступ ко всем файлам и папкам в месте запуска. Это место установки anaconda, тогда как это папка виртуальной среды для Pipenv.
Создание записной книжки
Поскольку мы завершили процесс установки, теперь мы можем перейти к созданию записной книжки. Нажмите кнопку записной книжки на домашней странице веб-интерфейса JupyterLab или перейдите в меню «Файл» -> «Создать» -> «Записная книжка», чтобы создать новую записную книжку.
Это откроет новую записную книжку без названия под названием untitled.ipynb, где мы можем начать кодировать наш проект.
Компоненты notebook Jupyter
В этом разделе мы рассмотрим основные компоненты записной книжки Jupyter, которые необходимы для взаимодействия со средой Jupyter.
Файл ipynb
Файл.ipynb — это расширение, используемое для определения отдельной записной книжки. Этот файл содержит все данные вашей записной книжки в формате JSON. Более того, он включает все содержимое ячеек, вложения изображений в виде преобразованных строк и метаданные, относящиеся к записной книжке.
Давайте создадим простую записную книжку с именем test.ipynb и добавим туда простой оператор печати, как показано ниже.
Теперь, если мы откроем файл test.ipynb как файл JSON, мы увидим, как там хранится вся информация, относящаяся к записной книжке.
Ядро ноутбука
Ядро действует как мозг ноутбука. Любой код в ячейке будет выполнен в ядре, а результат будет возвращен в записную книжку. Ядро рассматривает весь документ (записную книжку) как единое целое и поддерживает состояние между ячейками.
В следующем примере мы определили переменную (data_x) в ячейке и получили доступ к той же переменной в отдельной ячейке для простого вычисления сложения.
Если нам нужно очистить все переменные, мы можем просто перезапустить ядро или использовать другие параметры, такие как «Перезапустить и очистить все выходные данные» или «Запустить все ячейки», в зависимости от требуемого результата. Кроме того, у нас есть возможность прерывания, чтобы остановить ядро, если оно зависло из-за вычислительной проблемы.
Ядро также определяет язык программирования, поддерживаемый в записной книжке, начиная от Java, Scala, R, Lua и т. Д. Более того, пользователи могут установить любое поддерживаемое ядро и использовать его для создания записной книжки. Некоторые ядра, такие как ядро SoS, расширяют поддержку нескольких языков в одном ноутбуке.
Ячейки в записной книжке
Клетки — это строительные блоки записной книжки. Все, что мы делаем в блокноте, мы делаем в определенном блоке клетки. В записной книжке есть два типа ячеек:
- Кодовая ячейка. Эти ячейки содержат код, который будет выполняться в ядре. Когда записная книжка будет запущена, результат будет показан под ячейкой кода (вне ячейки).
- Ячейка уценки. Эти ячейки содержат текстовое содержимое с использованием Markdown. Во время выполнения результат будет сгенерирован на месте ячейки уценки.
Типы ячеек:
Ячейки во время выполнения:
Для всех типов ячеек существует два режима: режим редактирования и командный режим:
- Когда мы щелкаем ячейку и начинаем редактирование, она меняет свой внешний вид с синей рамкой, указывающей на режим редактирования.
- Когда мы выйдем из ячейки, он станет серым, чтобы указать командный режим.
Режим редактирования ячейки:
Командный режим ячейки:
Начало работы с аналитикой данных
Теперь, когда мы можем установить Jupyter Notebooks и понять его основные компоненты, давайте проведем анализ данных и визуализацию с помощью Notebook.
Сначала мы создадим новую записную книжку с именем «race_data». Для этого анализа мы будем использовать набор данных о чемпионате мира Формулы-1 (1950-2021), доступный от Kaggle.
Цель этого анализа — определить водителя с наибольшим количеством побед в F1. Прежде чем начать, убедитесь, что вы установили необходимые библиотеки для среды Python. Вы можете использовать команду «pipenv install» для установки Pipenv и использовать conda для установки anaconda.
Шаг 1
Импортируйте данные из набора данных Kaggle (файл.csv) во фреймы данных Pandas.
import numpy as np
import pandas as pd# Import Data
results_dataframe = pd.read_csv(‘G:\data\results.csv’)
circuits_dataframe = pd.read_csv(‘G:\data\circuits.csv’)
drivers_dataframe = pd.read_csv(‘G:\data\drivers.csv’)
races_dataframe = pd.read_csv(‘G:\data\races.csv’)
constructor_dataframe = pd.read_csv(‘G:\data\constructors.csv’)
Шаг 2
Проверьте импорт, распечатав несколько фреймов данных.
# Prints Results Data Frame
results_dataframe.head()# Prints Drivers Data Frame
drivers_dataframe.head()
Шаг 3
Объедините все фреймы данных, чтобы создать единый первичный фрейм данных, состоящий из всех необходимых данных.
# Join Data Frames
driver_result_dataframe = pd.merge(results_dataframe,drivers_dataframe,on=’driverId’)
race_result_dataframe = pd.merge(driver_result_dataframe,races_dataframe,on=’raceId’)
complete_race_data_dataframe = pd.merge(race_result_dataframe,constructor_dataframe,on=’constructorId’)complete_race_data_dataframe.head()
Шаг 4
Очистите фрейм данных. Мы удалим все ненужные столбцы из фрейма данных.
complete_race_data_dataframe = complete_race_data_dataframe.drop
(columns=[‘url_x’,’url_y’,’name_y’,’nationality_y’,’url’,’time_y’])
complete_race_data_dataframe.head()
Шаг 5
Подсчитайте общие выигрыши для каждого гонщика. В приведенном ниже блоке кода мы:
- Отфильтруйте данные гонок, чтобы они содержали только первые позиции, и создайте новый целочисленный столбец с именем «position_mod».
- Сгруппируйте данные по столбцам «driverRef» и «nationality_x» с суммой postion_mod.
- Отсортируйте данные по убыванию и получите первые десять строк.
# Filter & Calculate Results
total_wins = complete_race_data_dataframe[(complete_race_data_dataframe[‘position’]== ‘1’)] total_wins[‘position_mod’] = total_wins[‘position’].astype(int)
total_wins = total_wins.groupby([‘driverRef’,’nationality_x’])[‘position_mod’].sum().reset_index()
total_wins = total_wins.sort_values(by=[‘position_mod’], ascending=False)
total_wins = total_wins.head(10)
ШАГ 6
Создайте гистограмму, используя новый набор данных, полученный на шаге 5, с использованием библиотеки plotly.
import plotly.graph_objects as go
from plotly.offline import iplot
import plotly.io as pio
pio.renderers.default = “iframe”# Create Bar Chart
chart = go.Figure(data=[go.Bar(
x= total_wins[‘driverRef’],
y= total_wins[‘position_mod’],
hovertext = total_wins[‘nationality_x’] )])chart.update_layout(title={
‘text’: “TOP 10 DRIVERS WITH MOST WINS IN F1”,
‘y’:0.9,
‘x’:0.5,
‘xanchor’: ‘center’,
‘yanchor’: ‘top’},
yaxis=dict(
title=’No of Wins’,
titlefont_size=16,
tickfont_size=14),
xaxis=dict(
title=’Driver’,
titlefont_size=16,
tickfont_size=14),
template = “plotly_dark”
)
iplot(chart)
Созданный график
Начните анализ данных с Jupyter
Jupyter Notebooks — идеальное место для начала работы в области анализа данных. Jupyter предоставляет многофункциональную, надежную и удобную среду с использованием нескольких методов установки. Пользователи могут использовать Jupyter в любой среде, независимо от платформы.