13 Января 2020 Pandas-profiling для разведочного анализа данных

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

Исследовательский анализ данных может быть настолько глубоким, насколько это вам нужно, но базовый анализ должен иметь следующие элементы:

• Первые и последние значения
• Форма набора данных (#rows и #columns)
• Типы данных / переменных
• Отсутствующие и нулевые значения
• Дублированные значения
• Описательная статистика (среднее, минимальное, максимальное)
• Распределение переменных
• Корреляция

68910502-d3a18e80-0706-11ea-859c-1376f82bed5d.png
Многим нравится изучать наборы данных вручную, даже самые большие. Изучать вручную данные полезно, но проводить анализ небольших объемов мы считаем можно и автоматически. Для автоматического изучения данных по базовым критериям есть отличная библиотека - Pandas profiling. Библиотека предоставляет из себя множество полезных инструментов для выполнения разведочного анализа данных. На примере NASA мы покажем что библиотека не сложная и подойдет для быстрой обработки данных.

!pip install pandas-profiling

#Importing Libraries
import pandas as pd
import numpy as np
import pandas_profiling as pdp

#Pulling data from the NASA open data portal
data = pd.read_csv('https://data.nasa.gov/resource/gh4g-9sfh.csv')

#Creating the Exploratory Data Analysis of our dataset
report = pdp.ProfileReport(data, title='Pandas Profiling Report', style={'full_width':True})

report #Saved as variable in the case that you need to print it again


Ссылка: https://pandas-profiling.github.io/pandas-profiling/docs/