Понимание данных имеет ключевое значение, когда вы находитесь в сфере мира данных, независимо от того, являетесь ли вы инженером данных, аналитиком данных, инженером ML/AI или специалистом по данным.
В этой статье я расскажу, как я изучаю, анализирую и визуализирую набор данных о недвижимости из Нью-Йорка, это небольшой набор данных. Эта статья предназначена для новичков, которые ищут идеи о том, как понять набор данных.
Файлы с кодом и данными находятся здесь, на GitHub.
Начнем с понимания; Что такое исследовательский анализ данных (EDA)?
EDA обычно является шагом, который следует сразу после сбора данных, прежде чем мы приступим к моделированию. Для получения точной модели необходима эффективная обработка данных на этом этапе EDA.
Какие шаги включает в себя EDA, спросите вы, вот здесь:
Анализ начинается с вопросов.
- Какова наша цель с этими данными?
- Почему мы анализируем эти данные?
- Как мы собираемся получить ответы?
Рассмотрите набор данных, который я взял, набор данных свойств.
Интуиция:
Я тот, кто ищет дом в Нью-Йорке в этих почтовых индексах. Вопросы, которые я задаю:
«Цена» будет ярлыком; ось Y. Другие значения должны быть связаны с Ценой, чтобы помочь мне определить, покупать или нет.
Теперь, когда у меня есть вопросы для этого набора данных, чтобы ответить. Я собираюсь начать спорить; который по существу очищает данные и преобразует функции, если это необходимо.
Я загрузил данные в фрейм данных «property_data», и данные выглядят так:
С помощью атрибута shape мы видим, что действительно работаем с небольшим набором данных из 183 строк и 9 столбцов. Описательная статистика с помощью методаscribe дает статистику только для почтового_кода, почему так, давайте выясним, используя атрибут dtypes для поиска типов
ОБРАБОТКА ДАННЫХ И ПРЕОБРАЗОВАНИЕ ФУНКЦИЙ
Все остальные, кроме postal_code, являются строками, нам нужно будет выполнить некоторые преобразования функций, с одними строками было бы трудно получить хорошую точность модели.
Давайте проверим, есть ли нули,
Кроме недвижимости, никакие другие функции не имеют нулевых значений, здесь довольно чистый набор данных. Я собираюсь убрать столбцы «недвижимость» и «url», потому что, на мой взгляд, они не могут дать много информации.
Примечание. Я не публикую все снимки экрана, так как все находится в загруженном коде.
Поскольку в остальном данные чистые, давайте сделаем несколько преобразований признаков, чтобы получить более подробную информацию.
Из столбцов «факты и характеристики» извлекаются кровати, ванны и информация о квадратных футах, преобразуются в числовые значения, и любая кровать с надписью «Студия» присваивается как 0.
Из столбца «цена» мы знаем о столбце «цена» то, что он находится в строке, и при преобразовании в числовой есть запятые, у нас не может быть запятых, поэтому мы собираемся разделить их и воссоединить строку без запятых перед преобразованием их в числовые,
Из столбца «название» мы можем извлечь тип собственности, будь то квартира, квартира, потеря права выкупа.
После обработки окончательного набора данных перед визуализацией.
И типы данных:
ВИЗУАЛИЗАЦИЯ ДАННЫХ
На приведенном выше изображении данные кажутся немного искаженными, большинство списков относятся к типу квартир, это потенциально может вызвать проблемы с моделированием.
Давайте посмотрим на другие визуализации, которые помогут ответить на вопросы, о которых мы говорили ранее.
Были вопросы:
- Цена по отношению к количеству кроватей, ванн и квадратных футов
2. Цена зависит от типа недвижимости
3. Цена в зависимости от города и почтового индекса.
ЗАКЛЮЧЕНИЕ
Из этого набора данных можно сделать вывод, что эти данные могут не давать нам точных прогнозов при моделировании, поскольку у нас есть некоторый перекос данных с дополнительной информацией только о доступных квартирах; и нуждаются в более разнообразных данных, чтобы получить более точные модели. Вывод будет заключаться в том, чтобы вернуться назад и собрать больше данных, чтобы получить точные результаты для моделирования. А еще, что недвижимость в Нью-Йорке очень дорогая 😊.
Говорят, что 90% мировых данных в необработанном формате неструктурированы. Предпосылкой для машинного обучения является наличие чистых данных в качестве входных данных. Изменение данных, объединение данных, удаление пустых типов данных становится очень важным. Инженерам ML/Ai, специалистам по данным и всем, кто работает в области данных, необходимо хорошо разбираться в EDA.
ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА
- Шпаргалка PyData: https://pandas.pydata.org/Pandas_Cheat_Sheet.pdf
- Используемые библиотеки Python: Pandas, Seaborn, Matplotlib
- Python используется для обработки и визуализации данных.
- R хорош для статистического анализа, созданного статистиками, python больше для общего назначения.
- Pandas: два основных типа данных — Series и Data Frame (набор серий)