Вопрос или проблема
Как должен выглядеть набор данных для прогнозирования временных рядов?
Могу ли я сделать прогнозирование временных рядов с набором данных, который содержит информацию о квартирах с рекламных сайтов, полученную с помощью:
- веб-скрейпинга с 2018 по 2021 год
- 13 признаков
- Дата, Регион, площадь, количество комнат, этаж, цена, уровни, тип и т.д.
Вот ссылка на набор данных для получения дополнительной информации о наборе данных ссылка на набор данных
Или мне нужно иметь исторические данные о изменении цен на эти квартиры со временем?
Например, квартира в регионе 1 с 1 комнатой стоит X в 2018 году и стоит Y в 2019 году?
То, что вы описали, является панельным набором данных, а не временными рядами. Поэтому вы используете методы регрессии для панельных данных, в основном фиксированные или случайные эффекты. Хорошие ресурсы здесь и здесь.
Наборы данных временных рядов должны сначала быть достаточно репрезентативными для бизнес-процесса, с которым они работают.
Например, некоторые процессы лучше представлять день за днем, другие — час за часом и т.д.
Вот почему вам сначала нужно знать цель, которая определит необходимую частоту и признаки; вы не можете взять все признаки и временные значения и получить хороший результат: вам нужно сначала определить хотя бы одну цель, проанализировать ваши данные, определить, какие признаки имеют смысл, применить функции корреляции, чтобы узнать связи между признаками и т.д.
Как только у вас будет хорошее понимание вашего набора данных, вы можете начать с нескольких признаков, чтобы увидеть, работает ли ваша модель.
В вашем случае лучше применять оба решения отдельно:
- Временные ряды для определения того, как меняется рынок, и прогнозирования цен согласно нескольким временным признакам.
- Многоразмерное прогнозирование на самых актуальных данных, чтобы предсказать цены (или другие вещи), используя различные признаки.
Но вы не можете использовать оба решения одновременно в начале. Лучше отделить их, используя несколько репрезентативных признаков, чтобы получить хорошие результаты, а затем увеличить сложность, сочетая множество признаков.
Ответ или решение
Для успешного прогнозирования временных рядов важно, чтобы ваш набор данных был соответствующим образом структурирован и содержал релевантную информацию. В вашем случае набор данных, связанный с квартирами, является более сложным объектом. Давайте разберем, каким образом он должен выглядеть для временного прогнозирования.
Структура набора данных для временного прогнозирования
-
Временная метка (дата): Это основной компонент временного ряда. Каждая запись должна содержать точно определенную дату или временной интервал. Например, если у вас есть данные по квартирам, они должны быть сохранены так, чтобы мы могли видеть изменения во времени (например, ежемесячно или ежеквартально).
-
Целевая переменная: В случае ваших данных, это, скорее всего, цена квартиры. Для временного ряда вам нужно будет следить за тем, как меняется цена со временем.
-
Факторы (предикторы): Это дополнительные признаки, которые вы хотите использовать для прогнозирования целевой переменной. В вашем наборе данных это может включать:
- Регион
- Площадь
- Число комнат
- Уровень
- Тип недвижимости
- Другие характеристики (например, наличие балкона, этаж, состояние и т. д.)
-
Частота данных: Определитесь, как часто у вас есть данные. Например, если в вашем наборе данных представлены квартиры с указанием цен за каждый год, то это подходит для годового временного ряда. Однако, если у вас есть ежемесячные или недельные данные, это позволит вам более тонко анализировать тренды.
Необходимые данные для временного анализа
Как вы правильно заметили, для правильного временного прогнозирования хорошо иметь исторические данные о ценах. Это значит, что вам нужно следить за изменением цен по одной и той же квартире в разные временные моменты. Например, вы получаете цену квартиры в регионе 1 с 1 комнатой в 2018 году и сравниваете её с ценой в 2019 году.
Алгоритм работы с данными
-
Предобработка данных: Убедитесь, что ваши данные чисты и организованы. Удалите пропуски и ненужные дубликаты. Приведите даты к одному формату.
-
Создание временного ряда: При наличии данных о ценах, сгруппируйте информацию по датам. Лучше всего, если у вас будет один набор данных, где указаны даты, цены, и другие характеристики квартир.
-
Анализ временного ряда: Проведите анализ данных на наличие трендов, сезонности и других факторов. Используйте визуализацию для понимания, как менялась цена со временем.
-
Моделирование: После того как вы проанализируете данные, можете применять различные маршруты прогнозирования:
- Использовать модели временных рядов, такие как ARIMA или экспоненциальное сглаживание.
- Модели машинного обучения, такие как регрессия, бустинг и другие, если хотите учитывать множество факторов.
-
Оценка результатов: Важно использовать тестовые и тренировочные выборки для оценки качества ваших прогнозов. Показатели, такие как MSE (среднеквадратичная ошибка), могут помочь оценить, насколько хорошо ваша модель предсказывает цены.
Заключение
Ваши данные могут быть использованы как для анализа временных рядов, так и для многомерного прогнозирования. Однако, для начала, имеет смысл сосредоточиться на одной задаче, затем по мере успешности переходить к более сложным моделям и добавлять дополнительные признаки.
Таким образом, для временного прогнозирования в вашем контексте необходимо структуру набора данных, включающую временные метки, целевую переменную и соответствующие предикторы. Убедитесь, что у вас есть достаточное количество данных для исторического анализа.