Введение

Этот проект был направлен на изучение факторов, определяющих ценообразование транспортных средств на местном рынке подержанных автомобилей. Эти запросы проводятся в двух демографических районах: Ирвин, Калифорния, и Риверсайд, Калифорния. Поскольку рынок подержанных автомобилей очень динамичен, знакомство с различными местами выборки дает нам уникальную возможность сравнить и сопоставить поведение цен в регионах с совершенно разным средним доходом. Выборка с каждого рынка также позволила нам лучше понять, существуют ли значимые различия в ценах между областями, когда мы анализировали рынки по отдельности.

Вся информация, относящаяся к экономичным и роскошным автомобилям, будет сначала собираться с помощью веб-скрапинга с ведущего цифрового рынка автомобильной промышленности Cars.com. В этом анализе будут участвовать автомобили 6 разных марок, которые можно найти в Ирвине и Риверсайде. Что касается экономичных автомобилей, я сосредоточусь на Nissan Sentras, Ford Focus и Chevy Malibus. Между тем, роскошные автомобили будут состоять из Porsche Macan, BMW X3 и Audi A4.

Данные

Как упоминалось во введении, я собирал данные с помощью веб-скрейпинга Cars.com. Я использую Beautiful Soup для очистки трех страниц каждой модели автомобиля и создания двух отдельных фреймов данных на основе областей: Ирвин и Риверсайд. Затем я объединил их в большой массив данных со всеми автомобилями Irvine и Riverside. Я извлек «Vin», «Год», «Описание автомобиля», «Цена», «Пробег», «Цвет кузова», «Цвет салона», «Трансмиссия», «Привод», «Ссылка» каждого автомобиля.

Чтобы запустить модель и выполнить анализ, я добавил столбец «Местоположение», в котором указано, находится ли машина в Ирвине или Риверсайде. Были созданы фиктивные переменные в отношении местоположения, а также типов автомобилей.

Исследовательский анализ

Я начал с чтения фрейма данных в Python с помощью pandas и дальнейшего изучения набора данных. Всего в нашем наборе данных 632 строки и 19 столбцов. Перед моделированием и анализом данных я отбросил ненужные переменные — «Vin», «Местоположение», «Ссылка». Между тем, переменные «Цвет кузова», «Цвет салона», «Трансмиссия» и «Трансмиссия» преобразуются в фиктивные переменные с помощью горячего кодирования.

Визуализация данных

Визуализации создаются через Tableau

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

Моделирование данных

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

Разделите набор данных на обучение и тестирование, установив 25% набора данных, которые будут использоваться для тестирования. Я запустил 7 моделей машинного обучения: логистическая регрессия, линейная регрессия, машина опорных векторов, K ближайший сосед, дерево решений, случайный лес, гауссовский наивный байес, а затем получил точность.

Мы видим, что случайный лес и дерево решений имеют наивысший балл за модель выбора признаков. Логистическая регрессия имеет самый низкий балл, потому что логистическая регрессия используется для решения задачи классификации. Прогнозирование цены — это проблема регрессии, а не проблема классификации. Однако я решил выбрать случайный лес в качестве нашей модели, потому что случайный лес — это алгоритм машинного обучения на основе дерева, чтобы избежать переобучения. Случайный форсет — это совокупность несовершенных деревьев решений. Когда прогнозы всех деревьев усредняются, несовершенства сводятся к минимуму.

Ниже приведены дорогие 15 слоев нашего дерева решений в случайном лесу:

Чтобы было читабельно и понятно. Я вытащил одно дерево из случайного леса, ограничив глубину дерева до 3.

Используя это дерево, мы можем делать прогнозы цен для любых новых данных. Я хочу купить машину в Риверсайде: год выпуска=2015, пробег=10 000, цвет кузова=красный, тип автомобиля=форд, цвет салона= серый.

Позвольте мне показать вам, как я могу использовать это дерево для прогнозирования цены. Начните читать дерево с корневого узла, мы увидим, что первый ответ False, потому что пробег больше 9887,5. Таким образом, мы движемся вправо. Затем мы сталкиваемся со вторым вопросом: меньше или равно пробегу 49960,0. Ответ на этот вопрос верен, так как пробег автомобиля, который мы прогнозируем, составляет 10 000. Затем спуститесь влево и ответьте на последний вопрос: меньше или равно пробегу 23129,5. Наш ответ будет True. Следовательно, мы можем сделать вывод, что средняя расчетная цена составляет 29447,1 доллара, как показано в значении листового узла.

Последствия

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

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

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

Ограничения

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

Полный код можно найти здесь: https://github.com/ailing123/Web-Scarpe-Cars.com-/blob/master/Web%20scape%20cars.com%20used%20cars%20price%20analysis%20(1 ).ipynb