Хочешь уверенно проходить IT-интервью?
![Готовься к IT-собеседованиям уверенно с AI-тренажёром T1!](https://media.proglib.io/banner/2025/01/28/t1.jpg)
Мы понимаем, как сложно подготовиться: стресс, алгоритмы, вопросы, от которых голова идёт кругом. Но с AI тренажёром всё гораздо проще.
💡 Почему Т1 тренажёр — это мастхэв?
- Получишь настоящую обратную связь: где затык, что подтянуть и как стать лучше
- Научишься не только решать задачи, но и объяснять своё решение так, чтобы интервьюер сказал: "Вау!".
- Освоишь все этапы собеседования, от вопросов по алгоритмам до диалога о твоих целях.
Зачем листать миллион туториалов? Просто зайди в Т1 тренажёр, потренируйся и уверенно удиви интервьюеров. Мы не обещаем лёгкой прогулки, но обещаем, что будешь готов!
Реклама. ООО «Смарт Гико», ИНН 7743264341. Erid 2VtzqwP8vqy
1. Jupyter Notebook
Краткий обзор
![Интерфейс Jupyter Notebook](https://media.proglib.io/posts/2021/10/09/44e828c46900eeef7bba15908990ec08.png)
Jupyter Notebook представляет собой инструмент для проведения исследовательской работы в сфере науки о данных. Его особенностью являются интерактивные ячейки кода, запускать который можно изолированно друг от друга, мгновенно получая результат в виде расчетов, таблиц, графиков и т.п.
Ссылка на исходный код проекта на GitHub.
Установка
Инструкции по установке продукта можно прочитать по ссылке.
Пример установки дистрибутива доступен по ссылке.
Помимо указанных инструментов дистрибутив содержит обязательные пакеты для работы с данными: Scipy, numpy, pandas.
![Состав дистрибутива Anaconda](https://media.proglib.io/posts/2021/10/09/203552dd6413ab95a2f7843983fde4b3.png)
Запуск и создание файлов
Запуск Jupyter Notebook в терминале:
jupyter notebook
После запуска Jupyter Notebook перед пользователем в браузере автоматически открывается встроенный проводник, необходимый для создания рабочего файла в формате .ipynb
, который в профессиональной среде называют «ноутбукам» или «тетрадками».
![Файловый менеджер Jupyter Notebook](https://media.proglib.io/posts/2021/10/09/33ad90f7d481304608d3c1afed4827e9.png)
Создание файла доступно в меню файлового менеджера в правом верхнем углу: New -> python3
.
После создания файла, в новой вкладке браузера становится доступно основное окно инструмента. Оно содержит элементы меню управления файлами и ячейками, а также ячейки для работы с кодом и текстом под меню.
Основная рабочая зона
Доступно два основных формата работы внутри ячеек: разметка текста и код.
В формате разметки текста синтаксис аналогичен языку Markdown. В этом формате можно описать заголовки и подзаголовки документа, комментарии, имя и контактные данные автора и т.п. В формате редактирования кода ячейка активна для исполнения в той программной среде, в которой запущен ноутбук. По умолчанию речь идет о языке программирования Python, окружение для которого создано при помощи системы управления средой Conda, однако после дополнительной настройки доступны и другие языки:
- Ruby;
- Perl;
- R;
- bash.
Доступно два режима работы с ячейками:
- редактирование содержимого, в котором осуществляются операции внутри ячейки;
- командный режим, в котором операции осуществляются над самой ячейкой.
Первый режим интуитивно понятен и активируется кликом левой кнопкой мыши внутри ячейки, после чего слева от ячейки появится цветовой индикатор зеленого цвета.
![Режим редактирование содержимого Jupyter Notebook](https://media.proglib.io/posts/2021/10/09/8f1bdd9b19acfad8f36dc83e06848711.png)
Второй режим активируется кликом левой кнопкой мыши слева от ячейки. В таком режиме ячейку можно перемещать выше/ниже других, изменять формат работы с ячейкой, добавлять новые ячейки и удалять существующие, объединять их и т.п. В командном режиме цветовой индикатор слева от ячейки – синего цвета.
![Командный режим Jupyter Notebook](https://media.proglib.io/posts/2021/10/09/e385e1cf610099cbdffcc815f00fd459.png)
Для запуска команды bash, перед кодом в ячейке необходимо добавить восклицательный знак:
!echo Run Bash Command
В подавляющем большинстве случаев работа с ячейками Jupyter Notebook осуществляется с помощью сочетания горячих клавиш клавиатуры (латинская раскладка) в командном режиме:
- a (above) – вставить ячейку выше выделенной;
- b (below) – вставить ячейку ниже выделенной;
- x – удалить ячейку;
- m – перевести ячейку в формат разметки текста – Markdown;
- y – перевести ячейку в формат работы с кодом;
- shift+enter – запустить ячейку и выделить следующую за ней.
Кроме перечисленных комбинаций, в основном меню инструмента доступны все возможные сочетания клавиш, которые помогают ускорить исследовательскую работу: help -> keyboard shortcuts.
2. Jupyter Lab
Краткий обзор
Jupyter Lab – это интерфейс нового поколения для Jupyter Notebook. Основные отличия от предыдущего инструмента заметны именно при визуальном сравнении. Слева появляется панель, которая содержит четыре вкладки:
- Файловый менеджер.
- Запущенные терминалы и ядра.
- Содержание.
- Менеджер расширений.
![Интерфейс Jupyter Lab](https://media.proglib.io/posts/2021/10/09/b2419f46b4327d6ce48d16f16c98a581.png)
Отдельного окна файлового менеджера у Jupyter Lab нет, он встроен в левую панель. Запущенные терминалы и ядра позволяют видеть перечень открытых вкладок и управлять ими.
![Элемент меню Jupyter Lab «Запущенные терминалы и ядра»](https://media.proglib.io/posts/2021/10/09/8620281023ff771ef6488a4b1469b521.png)
С точки зрения функциональности, именно наличие менеджера расширений делает Jupyter Lab модульным и масштабируемым инструментом, настроенным на актуальные задачи по Data Science.
![Элемент меню Jupyter Lab «Менеджер расширений»](https://media.proglib.io/posts/2021/10/09/bb2dc93f2a693c55c0ca82e464894924.png)
Во вкладке Settings
основного меню Jupyter Lab есть возможность выбирать цветовые темы оформления.
![Меню выбора тем Jupyter Lab](https://media.proglib.io/posts/2021/10/09/c7dea1633f065b7bd54e476db01f2c02.png)
Установка
Для начала, необходима установка системы управления средой Conda, которую можно осуществить из репозитория Miniforge на GitHub.
Далее, установка Jupyter Lab осуществляется командой в терминале:
conda install -c conda-forge jupyterlab
Возможна установка в составе дистрибутива языков программирования Anaconda, как было описано выше.
Запуск и создание файлов
Запуск Jupyter Lab в терминале:
jupyter-lab
Для создания нового файла необходимо кликнуть левой кнопкой мыши на кнопку New Launcher (+) под главным меню.
![Меню создания нового файла Jupyter Lab](https://media.proglib.io/posts/2021/10/09/73e4a10664423a60c70d5546e81557b2.png)
После этого откроется новая вкладка с перечнем возможных типов файлов:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/3cfd5ea5dad14524e56014252ab2120c.png)
После создания файлов все они отображаются в проводнике во вкладке слева:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/6bb0adbc43f91e6062694a15ba68cb48.png)
Помимо самих ноутбуков в формате .ipynb
Jupyter Lab поддерживает ряд других форматов:
.csv
, что позволяет изучать наборы данных;.jpg/gif/png
, что позволяет просматривать изображения в проектах компьютерного зрения;.pdf
, что дает возможность изучать документацию;.md
, что помогает в описании и документировании проекта.
Основная рабочая зона
В отличие от Jupyter Notebook, перетаскивание ячеек в Jupyter Lab можно осуществлять в графическом режиме, удерживая левую кнопку мыши.
![Перетаскивание ячеек в графическом режиме Jupyter Lab](https://media.proglib.io/posts/2021/10/09/d5f8f450f5227530473e35e9f598b287.png)
Ячейки с большим количеством текста/кода можно сворачивать кликом левой кнопкой мыши по цветовому индикатору. После сворачивания ячейки отображаются в виде троеточия. Разворачивание ячейки происходит аналогично.
![Сворачивание ячеек в графическом режиме Jupyter Lab](https://media.proglib.io/posts/2021/10/09/3312f08e4bbaa34d09ccb17828c9670c.png)
Если ноутбук содержит много текста и кода, навигация по различным участкам документа становится неудобной. Для решения проблемы предусмотрена возможность параллельного просмотра еще одного ноутбука.
![Параллельный просмотр ноутбуков в интерфейсе Jupyter Lab](https://media.proglib.io/posts/2021/10/09/743626f45c2f2814a8e9fd9829c96956.png)
Для этого требуется кликнуть правой кнопкой мыши по заголовку вкладки и выбрать: New View for Notebook
. В остальном механика взаимодействия с основной рабочей зоной первых двух инструментов схожа.
3. Расширения Jupyter Lab
JupyterLab TensorBoard
![Интерфейс TensorBoard](https://media.proglib.io/posts/2021/10/09/fa8252cc4f9842dc543890009211b84b.png)
Установка осуществляется через менеджер расширений левой панели:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/650a65a7c1bf1d11a45ff968ed843fb3.png)
JupyterLab Git
![Интерфейс JupyterLab Git. Материал сайта Neptune.ai](https://media.proglib.io/posts/2021/10/09/357cd2682aaab42f328c79127164756e.png)
JupyterLab variableInspector
![Интерфейс JupyterLab variableInspector](https://media.proglib.io/posts/2021/10/09/26df54bdf16b551ffaadbbdc5c80b60a.png)
JupyterLab plotly
![Интерфейс JupyterLab plotly](https://media.proglib.io/posts/2021/10/09/bdfaf09a826bf749476dfadb4c9d5714.png)
Ссылка на примеры диаграмм Plotly.
Расширений для JupyterLab существенно больше чем мы описали, поэтому каждый Data Scientist может провести ни один час в поисках подходящих для работы.
4. Azure Data Studio
Краткий обзор
Azure Data Studio имеет схожий подход к работе с кодом и разметкой текста в отдельно взятых изолированных ячейках, как и Jupyter Lab. Инструмент является бесплатным и кросс-платформенным. On-premise решение поддерживается следующими операционными системами: Windows, macOS и Linux.
![Интерфейс Azure Data Studio](https://media.proglib.io/posts/2021/10/09/c842a88e163acceab50ea3fc6f1b8f97.png)
Левая панель инструмента содержит шесть вкладок:
- Соединения.
- Поиск.
- Ноутбуки.
- Проводник.
- Управление версиями.
- Расширения.
Во вкладке Соединения
отражается перечень всех доступных (активных и неактивных) соединений с внешними ресурсами:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/52255d6a3d84d910d6a28b14b3b4c87c.png)
Эта вкладка позволяет создавать новые соединения, группировать их по папкам и фильтровать только активные соединения из общего списка.
Вкладка Поиск
позволяет произвести перебор всех включений искомого текста в разрезе рабочих файлов:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/0706585a081a61739feae8e6cd738d65.png)
Вкладка Ноутбуки
содержит перечень рабочих ноутбуков, совмещенных с результатами текущего поиска из предыдущей вкладки:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/11f8f1059df6661bb0c211048c521d43.png)
Вкладка Проводник
содержит перечень файлов из подключенной к инструменту рабочей папки (директории):
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/4d3e1f5f405bad773a20ccf3f7ec6d61.png)
Вкладка Управление версиями
позволяет реализовать инициализацию Git-репозитория и отправку текущей (зафиксированной) версии ноутбука в удаленный репозиторий на GitHub:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/d79d82646f688f5dff37eb590908b709.png)
Azure Data Studio базируется на Visual Studio Code, что дает дополнительную возможность использовать расширения Visual Studio Code, но не все из них совместимы.
![Вкладка «Расширения» Azure Data Studio](https://media.proglib.io/posts/2021/10/09/c0cb31bc3c7a40843cbadabee691150c.png)
Установка
Инструкции по установке продукта можно прочитать по ссылке.
Основным способом доставки инструмента до пользователя является бинарная дистрибьюция.
Запуск и создание файлов
Запуск Azure Data Studio в графическом режиме через главное меню:
Menu -> Azure Data Studio
Создание рабочего ноутбука осуществляется через основное меню инструмента:
File -> New Notebook (Alt + N)
Для создания подключения к SQL-серверу:
File -> New Query
Основная рабочая зона
Azure Data Studio позволяет работать параллельно в нескольких вкладках, в каждой из которых запущено свое собственное ядро/задача. Например, в одной вкладке в ячейках выполняются скрипты SQL, в другой – код на Python, в третьей – запрос на подключение к SQL-серверу.
![Вкладки Azure Data Studio](https://media.proglib.io/posts/2021/10/09/70dc9524f80b31dce1139af4ef34a1fd.png)
Наиболее часто используемые команды при работе с ячейками осуществляются с помощью сочетания горячих клавиш клавиатуры, полный перечень которых доступен в меню:
File -> Preferences -> Keyboard Shortcuts
![Сочетания горячих клавиш Azure Data Studio](https://media.proglib.io/posts/2021/10/09/829a2d4f3359a911b222684cdd9cf5db.png)
В правом верхнем углу основной рабочей области находится иконка менеджера пакетов, кликнув по которой левой кнопкой мыши можно контролировать уже установленные пакеты, а также устанавливать новые.
![Менеджер пакетов Azure Data Studio](https://media.proglib.io/posts/2021/10/09/7f806c1d2199bcb29aa690cca5df51a3.png)
5. Расширение Azure Data Studio
Managed Instance Dashboard
![Интерфейс Managed Instance Dashboard](https://media.proglib.io/posts/2021/10/09/2e0c1b0534851789ef3288b66283ba09.png)
Панель мониторинга предоставляет сведения об экземпляре базы данных SQL Azure, связанные с его производительностью и работоспособностью. Список некоторых из доступных отчетов:
- Свойства экземпляра.
- Использование хранилища как для локального хранилища SSD, так и для удаленного хранилища Azure Premium.
- Использование ЦП/хранилища.
- Статус реплик базы данных.
Query History
![Интерфейс Query History](https://media.proglib.io/posts/2021/10/09/b4942ced0fc8f6dc9697130aa1b02ac8.png)
Строка истории запроса содержит четыре части:
- Значок статуса: ✔️, если запрос выполнен успешно. Если возникли какие-либо ошибки, отображается значок ❌.
- Текст запроса: это текст запроса, который был выполнен.
- Информация о подключении: сервер и база данных, к которым был выполнен запрос.
- Отметка времени: дата и время выполнения запроса.
Redgate SQL Search
![Интерфейс Redgate SQL Search](https://media.proglib.io/posts/2021/10/09/b69977d52cb978cbdf665324e75fe86a.png)
Machine Learning
![Интерфейс настройки расширения Machine Learning. Microsoft.com](https://media.proglib.io/posts/2021/10/09/9525e36ef1bbbc32602dc25111880a01.png)
Schema Visualization
![Интерфейс Schema Visualization](https://media.proglib.io/posts/2021/10/09/821e161181f7fa8e1ddec588a4ff51e1.png)
.svg
.Для изучения полного перечня воспользуйтесь менеджером расширений в левой панели инструмента.
6. Apache Zeppelin
Краткий обзор
![Интерфейс Apache Zeppelin, источник: Habr.ru](https://media.proglib.io/posts/2021/10/09/290c6d3f135d4f54a1bcf4e7be55ccb4.png)
Apache Zeppelin – ноутбук c web-интерфейсом, доступный пользователю как на локальном компьютере через браузер, так и на удаленном сервере. Ноутбук позволяет управлять данными, строить интерактивную аналитику и совместно работать в проектах, используя SQL, Scala, Python, R и другие языки.
Установка
Инструкции по установке продукта можно прочитать по ссылке (англ.)
Установка потребует от пользователя базовых знаний администрирования UNIX-подобных операционных систем.
Запуск и создание файлов
Запуск Apache Zeppelin в терминале (в UNIX-подобной операционной системе):
bin/zeppelin-daemon.sh start
На стартовой странице инструмента:
Notebook -> Create new note
![Меню создания нового ноутбука Apache Zeppelin](https://media.proglib.io/posts/2021/10/09/a8ff12a0c0a899a30cb7ef0ae962e535.png)
Список ранее созданных ноутбуков также отражается на стартовой странице.
![Список ноутбуков Apache Zeppelin](https://media.proglib.io/posts/2021/10/09/7c4641f68b30c060e99ec86bdb22d103.png)
Основная рабочая зона
После запуска Apache Zeppelin перед пользователем в браузере открывается ноутбук.
![Ноутбук Apache Zeppelin](https://media.proglib.io/posts/2021/10/09/5d546d4a659f9e74bc5cd56469912c40.png)
Основная особенность ячеек Zeppelin заключается в том, что внутри одного ноутбука можно запускать ячейки на различных вычислительных ядрах и средах, для чего в первой строке ячейки прописывается специальный указатель, например:
- %sql – для запуска SQL-скрипта;
- %python – для запуска стандартного интерпретатора Python;
- %python.ipython – для запуска IPython интерпретатора (рекомендуется);
- %spark – для запуска Spark-сессии;
- %sh – для выполнения команд оболочки (Shell);
- и др.
Например, для вывода на экран текущей рабочей директории в ячейке необходимо выполнить код:
%sh
pwd
Для запуска IPython интерпретатора:
%python.ipython
print("hello world")
Другим значимым функциональным дополнением ноутбука является реализованная по умолчанию возможность визуализации данных. Для этого под ячейкой предусмотрена соответствующая пиктограмма графика.
![Визуализация данных встроенными средствами Apache Zeppelin](https://media.proglib.io/posts/2021/10/09/c43eb8262f6ebab659be72f81351e726.png)
7. Google Collab
Краткий обзор
![Интерфейс Google Collab](https://media.proglib.io/posts/2021/10/09/1d44fa67ff641351e4c0a96563957547.png)
Ключевое отличие от локального Jupyter Notebook – возможность запуска облачной сессии с графическим / тензорным ускорителем:
Меню -> Среда выполнения -> Сменить среду выполнения
![Выбор аппаратного ускорителя Google Collab](https://media.proglib.io/posts/2021/10/09/244fb0baf9cfd3813a9fbead5861aeb8.png)
В качестве GPU сервис предлагает 12GB NVIDIA Tesla K80, которая бесплатна для использования на ограниченное время – 12 часов за один запуск. Из одного аккаунта Google в случае использования GPU/TPU доступна только одна активная версия ноутбука. Платного тарифа для пользователей из России не предусмотрено.
Подробнее о лимитах инструмента можно прочитать по ссылке (англ.)
Левая панель инструмента содержит вкладки:
- Содержание.
- Найти и заменить.
- Фрагменты кода.
- Файлы.
Во вкладке Фрагменты кода
возможен поиск по шаблонам, что может ускорить работу с типовыми операциями, например такими, как подключение Google Drive к ноутбуку:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/bc4c054d48f1718cfe55918971c368b7.png)
Во вкладке Файлы
реализована навигация по файловой системе виртуальной машины, в которой запущен ноутбук, а также присутствует возможность монтирования диска Google Drive для загрузки/сохранения данных:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/f70888619ca706df0bbf8cb009f8bf21.png)
Запуск и создание файлов
Создание ноутбука и запуск сервиса Google Colab осуществляется из сервиса Google Drive:
В любой папке диска необходимо выполнить следующее действие:
Создать -> Еще -> Google Colaboratory
Перечень ноутбуков доступен в папке, в которой они были созданы.
![Список ноутбуков в папке Google Drive](https://media.proglib.io/posts/2021/10/09/bf7e8fc771845c921e8b58d1556caef2.png)
Также возможно создание нестандартных конфигураций ноутбуков.
Ноутбук с 35Gb RAM при использовании TPU, или 25Gb при использовании CPU\GPU доступен по ссылке.
Основная рабочая зона
В основном меню ноутбука, в разделе Инструменты
доступна раскладка горячих клавиш для работы с ячейками ноутбука. В Google Colab это сочетание отличается от сочетания в Jupyter Notebook.
![Горячие клавиши Google Colab](https://media.proglib.io/posts/2021/10/09/8b487b1076f6f7fc5ea8e51c713f7a22.png)
Реализована возможность добавлять ячейки в графическом режиме:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/298e3bbdbf359a909cbcb9c861ffe24a.png)
Возможность изменения порядка ячеек в графическом режиме (перетаскивание) – отсутствует. Для этого в правом верхнем углу каждой ячейки предусмотрено меню:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/045fc7900816f28f8c90e71cc0936416.png)
В остальном, работа в Google Colab схожа с работой в локальном ноутбуке Jupyter.
8. PyCharm Community
Краткий обзор
![Интерфейс PyCharm Community](https://media.proglib.io/posts/2021/10/09/24d94859e6f426bdd718d912bf78082f.png)
Левая панель инструмента содержит вкладки:
- Project.
- Commit.
- Pull Requests.
Вкладка Progects
содержит структуру каталогов проекта, в т.ч. структуру сторонних библиотек, а также инструменты для работы с ними.
После фиксации изменений в проекте по нажатию пиктограммы в верхнем правом меню
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/0c84f5084123da72259d3aba1b68d068.png)
открывается вкладка Comit
, где требуется ввести сообщение к осуществляемому комиту:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/183c3aa830eac7dc25f945ee85e9477a.png)
Сообщения к комитам целесообразно стандартизировать в формальной логике, например, с применением соглашения Conventional Commits.
![Вкладка <code class="inline-code">Git</code> PyCharm Community](https://media.proglib.io/posts/2021/10/09/d569ce90b37f47896ce28c025921b76c.png)
Git
PyCharm CommunityПри наличии предложений на изменение кода в репозитории GitHub со стороны участников проекта, все они отображаются во вкладке Pull Requests
.
Нижняя панель инструментов слева содержит вкладки:
- Git.
- TODO.
- Problems.
- Terminal.
- Python Packages.
- Python Console.
Наиболее востребованной вкладкой является Terminal
, в ней выполняются команды проекта, например:
![Вкладка <code class="inline-code">Терминал</code> в PyCharm Community](https://media.proglib.io/posts/2021/10/09/924f46b0e052c7c948a1ea6f827566d4.png)
Терминал
в PyCharm CommunityКоманда представляет собой запуск pipeline технологии DVC, о которой можно прочитать на сайте разработчика.
Ссылка на сайт разработчика технологии (англ.)
Установка
Основным способом распространения инструмента является бинарная дистрибьюция.
Скачать дистрибутив можно по ссылке.
Запуск и создание файлов
Существует два основных способа начала проекта.
- Создание нового проекта. В основном меню:
File -> New Project
. - Клонирование существующего проекта через систему контроля версий. В основном меню:
VCS -> Get from Version Control
.
Основная рабочая зона
В проектах Data Science PyCharm позволяет осуществлять рефакторинг кода, полученного в результате завершения исследовательской стадии проекта с применением ноутбуков.
Фрагменты кода оформляются в виде классов или функций на языке программирования Python.
![Окно редактора кода PyCharm Community](https://media.proglib.io/posts/2021/10/09/793232115fd35c328440cbd3b6a17fbe.png)
Зеленый символ в правом верхнем углу рабочего окна свидетельствует о том, что код написан с соблюдением стандарта написания кода PEP8.
Изучить стандарт можно по ссылке.
При наличии замечаний к коду, знак меняется на следующий (цифра указывает на количество замечаний):
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/1f646324a06bf61629e9e4bb4a119312.png)
9. JetBrains DataSpell
Краткий обзор
![Интерфейс JetBrains DataSpell](https://media.proglib.io/posts/2021/10/09/c28d8746486987ee4b906e96e856d507.png)
Левая панель инструмента содержит две основные вкладки:
- Workspace.
- Structure (описывает структуру заголовков инструмента).
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/6105f307cc5d11abcc5dd0f5ecb2517b.png)
Вкладка Workspace
содержит структуру каталогов проекта, а также инструмент для подключения сервера Jupyter Notebook:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/77ae0a102415424b8fdd1d3028559580.png)
Доступны подключения к локальному серверу, либо к удаленному по URL.
Правая панель содержит важный инструмент, который называется DataExplorer
. Он позволяет подключать различные системы управления базами данных (SQL/NoSQL), вроде Azure SQL Database, Apache Hive и др.
![Правая панель JetBrains DataSpell](https://media.proglib.io/posts/2021/10/09/4e0c8697f647067faacb3327c1915bda.png)
Нижняя панель содержит вкладки для работы с Git и консолью, аналогично PyCharm.
Установка
Дистрибутив DataSpell доступен по ссылке.
Запуск и создание файлов
После запуска инструмента из основного меню в диалоговом окне доступен выбор среды. По умолчанию указана Conda.
![Диалоговое окно выбора среды в JetBrains DataSpell](https://media.proglib.io/posts/2021/10/09/718fbf27c8d3ee8319f046c83281dfca.png)
Основная рабочая зона
Двойное нажатие левой кнопкой мыши на файле ноутбука в левой панели Workspace
открывает его непосредственно в основном окне редактора DataSpell.
![Окно ноутбука JetBrains DataSpell](https://media.proglib.io/posts/2021/10/09/d3b35aa291a8eceb75c3feac5305515a.png)
В таком режиме работа с ячейками ноутбука происходит привычным образом – редактирование кода внутри ячейки и операции над самой ячейкой.
В режиме отладки, после установки точки останова (break point), под основной рабочей областью ноутбука появляется таблица с историей исполнения в ячейках, а также выводом всех переменных, которые содержатся в пространстве имен ноутбука.
![Debugger JetBrains DataSpell](https://media.proglib.io/posts/2021/10/09/55b784a47e02b8a75971ab747e77d2df.png)
Двойное нажатие левой кнопкой мыши на файле .csv
в левой панели Workspace
открывает его непосредственно в основном окне редактора, облегчая визуальное исследование исходных данных.
![Просмотр файла .csv в JetBrains DataSpell](https://media.proglib.io/posts/2021/10/09/41f15c374fca369b81b640d75e9f0f55.png)
10. GitHub для Data Science
Проекты в области Data Science предполагают работу с ноутбуками в формате .ipynb
на исследовательской стадии проекта. Этот формат файлов хотя и поддерживается GitHub (их можно открывать непосредственно из web-интерфейса репозитория), но попытки просмотра содержимого в половине случаев завершаются ошибкой, страницу просмотра приходится обновлять и пробовать открыть файл снова.
Для решения этой проблемы частой практикой является просмотр ноутбука в Google Colab:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/b179c340013d4a726bf74c3807ffb957.png)
Пример кода для встраивания ссылки на просмотр ноутбука в файл README.md
в корневой директории репозитория:
[![Open In Colab]
(https://colab.research.google.com/assets/colab-badge.svg)]
(https://colab.research.google.com/github/usernane/repo/blob/master/foldername/notebookname.ipynb)
Файлы .ipynb
по сути являются структурированным текстом в формате JSON и отслеживать их изменения в процессе версионирования неудобно:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/812d8b7a4f12ab3d93be7e84db5eb46e.png)
Рефакторинг кода и структурирование его в «питоновские» файлы с расширением .py
и соблюдением стандарта PEP8 упрощают работу:
![📊 ТОП-10 инструментов для Data Science](https://media.proglib.io/posts/2021/10/09/972ae357edd8d73b0882fa99260ad63f.png)
Чтобы обойти архитектуру Git, Git LFS создает файл-указатель, который действует как ссылка на хранящийся в другом месте файл. GitHub управляет этим файлом указателя в репозитории. Когда вы клонируете репозиторий, GitHub использует указатель, чтобы найти сам файл.
Подробнее о работе с большими файлами можно прочитать в документации GitHub (англ.)
Работу с большими файлами также поддерживает технология DVC (Data Version Control).
Комментарии