Полуавтоматический анализ данных

Исследовательский анализ данных, также известный как EDA, становится все более популярной темой в науке о данных. Как следует из названия, это процесс проб и ошибок в неопределенном пространстве с целью поиска информации. Обычно это происходит в начале жизненного цикла науки о данных. На этой странице я представляю полуавтоматический процесс EDA (полуавтоматический анализ данных).

полуавтоматический анализ данных

Я буду использовать четыре основные библиотеки: Numpy — для работы с массивами; Pandas — для манипулирования данными в известном нам формате электронных таблиц; Seaborn и matplotlib — для создания визуализации данных.

Создайте кадр данных из импортированного набора данных, скопировав путь к набору данных, и используйте df.head(5), чтобы просмотреть первые 5 строк данных.

полуавтоматический анализ данных полуавтоматический анализ данных

Прежде чем мы увеличим масштаб каждого поля, давайте сначала рассмотрим общие характеристики набора данных. info() дает количество ненулевых значений для каждого столбца и его тип данных.

полуавтоматический анализ данных полуавтоматический анализ данных

description() предоставляет базовую статистику по каждому столбцу. Передавая параметр include='all', он выводит количество значений, уникальное количество, верхнее значение частоты категориальных переменных и количество, среднее значение, стандартное отклонение, минимум, максимум и процентиль числовых переменных.

полуавтоматический анализ данных полуавтоматический анализ данных

Пропущенное значение и предварительная обработка

Что касается темы пропущенных значений, я предлагаю вам выбрать вкладку Корреляция и регрессии в рубрике Анализ данных.

Одномерный анализ

Функция description(), упомянутая в первом разделе, уже обеспечивает одномерный анализ неграфическим способом. В этом разделе мы получим больше информации, визуализируя данные и выявляя скрытые закономерности с помощью графического анализа.

Категориальные переменные → Гистограммы

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

Количественные переменные → Гистограммы

Чтобы графически представить распределение числовых переменных, мы можем использовать гистограмму, которая очень похожа на гистограмму. Он делит непрерывные числа на группы одинакового размера и отображает частоту записей между интервалами.

полуавтоматический анализ данных полуавтоматический анализ данных

Я использую этот цикл for для перебора столбцов фрейма данных и создания графика для каждого столбца. Затем используйте гистограмму, если они являются числовыми переменными, и гистограмму, если они являются категориальными переменными.

полуавтоматический анализ данных полуавтоматический анализ данных

Многофакторный анализ: количественный против количественного

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

Во-первых, давайте воспользуемся матрицей корреляции, чтобы найти корреляцию всех столбцов числового типа данных. Затем используйте тепловую карту, чтобы визуализировать результат. Аннотация внутри каждой ячейки указывает коэффициент корреляции отношения.

полуавтоматический анализ данных полуавтоматический анализ данных

Во-вторых, поскольку матрица корреляции указывает только на силу линейной зависимости, лучше всего отображать числовые переменные с помощью функции sns.pairplot(). Обратите внимание, что функции sns.heatmap() и sns.pairplot() игнорируют нечисловые типы данных.

полуавтоматический анализ данных полуавтоматический анализ данных

Вот пример с другим набором данных:

полуавтоматический анализ данных полуавтоматический анализ данных

Парный график или диаграмма рассеяния являются хорошим дополнением к корреляционной матрице, особенно там, где могут существовать нелинейные отношения (например, экспоненциальные, обратные отношения). Например, обратную связь между «Рейтингом» и «Продажами», наблюдаемую в наборе данных ресторана, можно ошибочно принять за сильную линейную зависимость, если мы просто посмотрим на число «–0,92» в матрице корреляции.

Категория против категории

Связь между двумя категориальными переменными можно визуализировать с помощью кластеризованных гистограмм. Частота первичных категориальных переменных разбита по вторичным категориям. Этого можно добиться с помощью sns.countplot().

Я использую вложенный цикл for, где внешний цикл перебирает все категориальные переменные и назначает их основной категорией, затем внутренний цикл снова перебирает список, чтобы связать первичную категорию с другой вторичной категорией.

полуавтоматический анализ данных полуавтоматический анализ данных

На гистограмме с кластерами, если частотное распределение всегда следует одной и той же схеме в разных кластерах, это предполагает отсутствие зависимости между первичной категорией и вторичной категорией. Однако, если распределение отличается, это указывает на то, что, вероятно, существует зависимость между двумя переменными.

полуавтоматический анализ данных полуавтоматический анализ данных

Категория против количественного

Блочная диаграмма обычно используется, когда нам нужно сравнить изменение числовых данных между группами. Это интуитивно понятный способ графически представить, влияет ли изменение категориальных характеристик на разницу в значениях, которую можно дополнительно определить количественно с помощью анализа ANOVA.

В этом процессе я связываю каждый столбец категориального списка со всеми столбцами числового списка и соответствующим образом строю блок-диаграмму.

полуавтоматический анализ данных полуавтоматический анализ данных

В наборе данных «reddit_wsb» не наблюдается существенных различий между разными категориями.

полуавтоматический анализ данных полуавтоматический анализ данных

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

полуавтоматический анализ данных полуавтоматический анализ данных

Другой подход основан на парном графике, который мы сделали ранее для числового и числового. Чтобы ввести категориальную переменную, мы можем использовать различные оттенки для представления. Так же, как то, что мы сделали для countplot. Для этого мы можем просто пройтись по категориальному списку и добавить каждый элемент в качестве оттенка парного графика.

полуавтоматический анализ данных полуавтоматический анализ данных

вот полученные результаты на втором наборе данных:

полуавтоматический анализ данных полуавтоматический анализ данных

На этом мы заканчиваем наш полуавтоматический анализ данных, который вы можете использовать для всех своих наборов данных.

Делиться
ru_RURU