Мы все знаем, что предварительная обработка данных — это очень трудоемкая задача в рамках роли специалиста по обработке и анализу данных. Данные не совсем чистые, как мы видим из примеров наборов данных в Kaggle, kdnuggets, data.gov или любых репозиториях машинного обучения.

Когда мы используем такие инструменты, как SAS, корпоративный майнер SAS, Weka или даже инструменты визуализации, такие как tableau и powerBI, мы многое упускаем из того, что происходит на задворках истории. Становится удобным изучить несколько строк кода на Python, чтобы справляться с такими ситуациями. Обучение Scikit — обязательный пакет для всех начинающих специалистов по данным. Здесь я объясню, как обрабатывать отсутствующие значения с помощью обучения Scikit с примером кода, различными методами и популярным набором данных с удаленными вручную данными.

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

Приведенный ниже код просто показывает, как импортировать CSV-файл с использованием библиотеки pandas, а iloc future только что был показан, но не использовался.

А вот и интересная часть истории, нам нужно импортировать Imputer из sklearn для выполнения задачи. После этого мы создаем метод и объясняем параметры.

вменитель = вменитель (отсутствующие_значения = «NaN», стратегия = «среднее», ось = 0)

missing_values : число, строка, np.nan (по умолчанию) или None

Заполнитель для отсутствующих значений. Все вхождения missing_values будут вменены.

стратегия : строка, необязательная (по умолчанию = ”mean”)

Стратегия вменения.

  • Если «среднее», замените отсутствующие значения, используя среднее значение по каждому столбцу. Может использоваться только с числовыми данными.
  • Если «медиана», то замените отсутствующие значения, используя медиану по каждому столбцу. Может использоваться только с числовыми данными.
  • Если «самая_частая», то замените пропущенное, используя наиболее частое значение в каждом столбце. Может использоваться со строками или числовыми данными.
  • Если «константа», то замените отсутствующие значения на fill_value. Может использоваться со строками или числовыми данными.

fill_value : строка или числовое значение, необязательно (по умолчанию = нет)

Когда стратегия == «константа», fill_value используется для замены всех вхожденийmissing_values. Если оставить значение по умолчанию, fill_value будет равно 0 при подстановке числовых данных и «missing_value» для строк или типов данных объекта.

Теперь давайте посмотрим на пример,

  1. В файле по умолчанию отсутствуют 3 значения в поле температуры, которое представлено «nan».

2) После того, как мы запустили вторую половину кода, вот результаты.

Тот же метод можно использовать для медианы, а также для наиболее часто встречающегося значения. Это моя часть первого поста по обучению scikit, я постараюсь опубликовать как можно больше.

Надеюсь, вам понравились небольшие советы, как сделать все вручную по коду, а не с помощью excel или инструментов :). Спасибо за чтение!.

Использованная литература:

  1. https://scikit-learn.org/stable/modules/generated/sklearn.impute.SimpleImputer.html

2. https://archive.ics.uci.edu/ml/datasets/Forest+Fires