Автор материала кратко, наглядно и с примерами кода представлет три пакета Python, заметно упрощающих и ускоряющих исследовательский анализ данных. Подборкой делимся к старту нашего флагманского курса по Data Science. Профилирование данных — один из первых этапов в любом проекте в науке о данных. Это вид исследовательского анализа данных для описания набора данных, лучшего понимания качества и основных характеристик данных. Профилирование — информационная поддержка дальнейших шагов в проекте Data Science, такие как тип и степень очистки данных, которая необходима, и любые другие методы предварительной обработки, что могут потребоваться. Данные в реальном мире редко изначально подготовлены к решению такой задачи, как машинное обучение. Многие этапы профилирования данных типичны для разных наборов данных и проектов. Профилирование данных обычно включает такие задачи, как применение описательной статистики для каждого столбца, определение объёма отсутствующих значений и разбор взаимодействий и корреляций переменных. Эти задачи бывают довольно рутинными, поэтому для автоматизации профилирования данных разработали ряд библиотек Python. Lux — дополнение к популярному пакету анализа данных Pandas. Она даёт возможность быстро создавать наглядные представления наборов данных и применять базовый статистический анализ при минимальном количестве кода. К тому же в Lux есть инструменты, которые в рамках анализа данных помогают определить и следующие действия. Команды ниже установят Lux. Если вы пользуетесь Lux в интерактивном блокноте Jupyter, нужно установить её виджет: Я воспользуюсь набором данных с Kaggle.com, чтобы показать некоторые возможности. Данные можно загрузить по этой ссылке. Набор содержит связанные с жилищными условиями атрибуты, взятые из переписи населения штата Калифорния за 1990 год. Сразу после установки Lux импортируем его вместе с Pandas. Теперь, когда мы запускаем некоторые широко распространённые функции Pandas, Lux расширит функциональность Pandas. Если импортировать и Lux, и Pandas в блокнот, а затем запускать df, над отображаемым фреймом данных после чтения из данного набора увидим новую кнопку:  По нажатию на кнопку Toggle Pandas/Lux отобразится выбор интерактивных визуальных представлений, которые предоставляют базовый статистический анализ признаков в наборе данных. Нажатие на жёлтый предупреждающий треугольник помогает разобраться в любых связанных с проведённым анализом предупреждениях. На рисунке ниже видно, что отчёт Lux имеет несколько вкладок. Первая вкладка набора показывает корреляционные графики по всем комбинациям количественных переменных. На следующих вкладках этого набора данных показаны распределение и частота проявления соответствующих признаков.  Кроме быстрой визуализации набора данных, Lux даёт подсказки и рекомендации по дальнейшему анализу. Эта функциональность управляется через intent. Чтобы обозначить цели анализа, вы передаёте интересующие вас столбцы этой функции, а Lux предоставляет соответствующее визуальное представление и отображает графики для рекомендуемых дальнейших действий в ходе анализа. В примере ниже я передала в intent два имени столбцов — это median_house_value и median_income. Lux вернул диаграмму рассеяния, сравнивающую взаимосвязь между значениями в этих столбцах, а ещё выбор дальнейших диаграмм и улучшений.  Инструмент pandas-profiling также позволяет быстро разобраться с набором данных. Pandas-profiling можно установить следующим образом. Я привела дополнительную команду установки расширения Jupyter, необходимую для создания визуализаций в блокноте. Основная функция pandas-profiling — отчёт о профилировании . Этот отчёт даёт подробный обзор переменных в вашем наборе данных. Он даёт представление о статистике для отдельных характеристик данных, таких как распределение, а также среднее, минимальное и максимальное значения. Тот же отчёт даёт представление о корреляциях и взаимодействиях между переменными.  Ещё одна приятная особенность pandas-profiling — интеграция с Lux. Если перейти на вкладку образцов отчёта профиля, мы вновь увидим кнопку Toggle Pandas/Lux!  Ещё одна Python-библиотека с открытым кодом называется Sweet-Viz. Она предоставляет быструю визуализацию и анализ данных. Основной козырь Sweet-Viz — обширный HTML-дашборд с полезными представлениями и сводками данных, который генерируется выполнением всего одной строки кода. Sweet-Viz можно установить этой командой: Рассмотрим код создания дашборда Sweet-Viz: В браузере откроется HTML-отчёт.  Ещё одна замечательная дополнительная функция, которой обладает Sweet-Viz по сравнению с двумя другими библиотеками в этой статье, — возможность сравнения разных образцов или версий данных. Это может оказаться очень полезным, если вы желаете сравнить обучающие наборы данных для машинного обучения, полученные, например, в разные промежутки времени. Для наглядности я разбила набор данных на две части. Код привела ниже. В Sweet-Viz для генерации отчёта, который предоставляет некоторый анализ для сравнения хрематистики и статистики двух образцов, я воспользовалась функцией compare.  Все эти три библиотеки созданы для автоматизации стандартной задачи профилирования данных перед применением других методов анализа данных. И хотя задачи этих инструментов схожи между собой, уникальный функционал есть у каждого из них. Ниже я привела своё краткое резюме по каждой библиотеке. Спасибо за внимание! Научим вас аккуратно работать с данными, чтобы вы прокачали карьеру и стали востребованным IT-специалистом. Новогодняя акция — скидки до 50% по промокоду HABR:  Data Science и Machine Learning Python, веб-разработка Мобильная разработка Java и C# От основ — в глубину А также