Курс "Специалист по искусственному интеллекту". Урок 6. Очистка и модификация данных, пропуски, цель
Шестой урок курса «Специалист по искусственному интеллекту». Если на предыдущей лекции мы проводили лишь визуальный осмотр данных, то сегодня мы переходим к их активной переработке. Мы научимся превращать «сырой» массив информации в структурированный датасет, готовый к обучению математических алгоритмов. В этой лекции мы подробно разберем: – Удаление дубликатов строк с помощью drop_duplicates() и отсечение нерелевантных признаков через drop(). – Переименование столбцов методом rename() для удобства дальнейшего написания кода. – Модификацию сложных признаков: как извлечь число комнат из смешанного текста (например, «2, изолированные» в число 2). – Технические ограничения Pandas/NumPy: почему наличие пропущенных значений (NaN) заставляет Pandas приводить целочисленные столбцы к типу float (1.00 вместо 1). – Обработку студий: логика создания бинарного признака «Студия» на основе пропущенных значений комнат. – Использование регулярных выражений (библиотека re) и метода apply(axis=1) для построчного применения кастомных Python-функций (на примере парсинга общей площади). – Анализ пропущенных значений (Missing Values) и их классификацию: MCAR, MAR, MNAR. – Стратегии удаления пропусков (dropna() по строкам и drop() по столбцам). – Стратегии заполнения (Imputation): константами, средним значением, медианой или модой. – Продвинутые подходы к заполнению дыр в данных: использование KNNImputer и MICE (IterativeImputer). – Очистку и подготовку целевой переменной («Цена»): извлечение числовых значений и парсинг текста. – Анализ распределения цены: проблема правой (положительной) скошенности цен на рынке недвижимости. – Логарифмическую трансформацию цен как стандартный метод улучшения линейных моделей и сжатия длинного «хвоста» распределения. Практическая работа выполняется в интерактивной облачной среде Google Colab. Сайт автора курса: https://leolukin.ru Таймкоды / таймметки 00:00 — Введение: переход к обработке и модификации датасета 00:17 — Удаление полных дубликатов строк с помощью drop_duplicates() 02:28 — Удаление нерелевантных признаков (ID, тип, адрес, телефон) через drop() 04:22 — Переименование колонок с помощью метода rename() 05:52 — Модификация признаков: кейс с извлечением количества комнат 07:38 — Проектирование стратегии обработки пропущенных данных в столбце комнат 09:32 — Техническое ограничение: почему пропуски (NaN) превращают int во float 11:28 — Создание нового бинарного признака «Студия» на основе пропущенных значений 11:58 — Восстановление структуры и приведение столбца комнат к типу int 13:32 — Сложное преобразование признаков: обработка столбца «Площадь» 14:34 — Использование регулярных выражений (re.search) для парсинга текста 15:00 — Построчное применение кастомных Python-функций через метод apply(axis=1) 15:58 — Оценка результатов очистки площади и выявление первых аномалий 16:40 — Подсчет пропусков по станциям метро перед удалением 16:55 — Методология работы с пропущенными значениями (Missing Values): MCAR, MAR, MNAR 17:40 — Стратегии удаления: когда использовать dropna(), а когда избавляться от столбцов 17:50 — Стратегии заполнения (Imputation): константы, среднее, медиана, мода 18:50 — Продвинутые подходы к заполнению пропусков (KNNImputer, MICE / IterativeImputer) 19:30 — Введение индикаторов пропусков (was_missing) как фичи 20:22 — Подготовка целевой переменной («Цена»): извлечение числовых значений и парсинг текста 21:28 — Анализ распределения целевой переменной: проблема правой скошенности цен 22:42 — Логарифмическая трансформация цен как стандартный метод улучшения линейных моделей
Шестой урок курса «Специалист по искусственному интеллекту». Если на предыдущей лекции мы проводили лишь визуальный осмотр данных, то сегодня мы переходим к их активной переработке. Мы научимся превращать «сырой» массив информации в структурированный датасет, готовый к обучению математических алгоритмов. В этой лекции мы подробно разберем: – Удаление дубликатов строк с помощью drop_duplicates() и отсечение нерелевантных признаков через drop(). – Переименование столбцов методом rename() для удобства дальнейшего написания кода. – Модификацию сложных признаков: как извлечь число комнат из смешанного текста (например, «2, изолированные» в число 2). – Технические ограничения Pandas/NumPy: почему наличие пропущенных значений (NaN) заставляет Pandas приводить целочисленные столбцы к типу float (1.00 вместо 1). – Обработку студий: логика создания бинарного признака «Студия» на основе пропущенных значений комнат. – Использование регулярных выражений (библиотека re) и метода apply(axis=1) для построчного применения кастомных Python-функций (на примере парсинга общей площади). – Анализ пропущенных значений (Missing Values) и их классификацию: MCAR, MAR, MNAR. – Стратегии удаления пропусков (dropna() по строкам и drop() по столбцам). – Стратегии заполнения (Imputation): константами, средним значением, медианой или модой. – Продвинутые подходы к заполнению дыр в данных: использование KNNImputer и MICE (IterativeImputer). – Очистку и подготовку целевой переменной («Цена»): извлечение числовых значений и парсинг текста. – Анализ распределения цены: проблема правой (положительной) скошенности цен на рынке недвижимости. – Логарифмическую трансформацию цен как стандартный метод улучшения линейных моделей и сжатия длинного «хвоста» распределения. Практическая работа выполняется в интерактивной облачной среде Google Colab. Сайт автора курса: https://leolukin.ru Таймкоды / таймметки 00:00 — Введение: переход к обработке и модификации датасета 00:17 — Удаление полных дубликатов строк с помощью drop_duplicates() 02:28 — Удаление нерелевантных признаков (ID, тип, адрес, телефон) через drop() 04:22 — Переименование колонок с помощью метода rename() 05:52 — Модификация признаков: кейс с извлечением количества комнат 07:38 — Проектирование стратегии обработки пропущенных данных в столбце комнат 09:32 — Техническое ограничение: почему пропуски (NaN) превращают int во float 11:28 — Создание нового бинарного признака «Студия» на основе пропущенных значений 11:58 — Восстановление структуры и приведение столбца комнат к типу int 13:32 — Сложное преобразование признаков: обработка столбца «Площадь» 14:34 — Использование регулярных выражений (re.search) для парсинга текста 15:00 — Построчное применение кастомных Python-функций через метод apply(axis=1) 15:58 — Оценка результатов очистки площади и выявление первых аномалий 16:40 — Подсчет пропусков по станциям метро перед удалением 16:55 — Методология работы с пропущенными значениями (Missing Values): MCAR, MAR, MNAR 17:40 — Стратегии удаления: когда использовать dropna(), а когда избавляться от столбцов 17:50 — Стратегии заполнения (Imputation): константы, среднее, медиана, мода 18:50 — Продвинутые подходы к заполнению пропусков (KNNImputer, MICE / IterativeImputer) 19:30 — Введение индикаторов пропусков (was_missing) как фичи 20:22 — Подготовка целевой переменной («Цена»): извлечение числовых значений и парсинг текста 21:28 — Анализ распределения целевой переменной: проблема правой скошенности цен 22:42 — Логарифмическая трансформация цен как стандартный метод улучшения линейных моделей
