Лучший способ отправить сгруппированные данные в arima / lm и перестроить оригинальные столбцы в R? - PullRequest
0 голосов
/ 15 мая 2018

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

Я хочу знать, есть ли лучший способ свести набор данных перед отправкой в ​​модели, чтобы впоследствии я мог перестроить набор данных.Текущий метод имеет сечения id + таксономия, но когда он отправляется через модель arima, он все еще свернут.Нужно разделить его или найти лучший метод.

Код (данные выглядят не так точно):

df <- data.frame(

id <- rep(seq(2694065, length=62, by = 1),10),
list_date <- rep(seq(as.Date("2017-06-01"), length=62, by = 1),10),
event <- sample(c("Baseball","Minors","Music","NA"), 620, replace =   
TRUE),
event_date <- rep(seq(as.Date("2017-09-01"), length=62, by = 1),10),
ticket_ct <- sample(10:11000, size=620, replace = TRUE),
price <- sample(10:600, size=620, replace = TRUE),
cat1 <- sample(c("Sox", "Twins", "Phil", "Band1", "Band2"),620,replace 
= TRUE),
cat2 <- sample(c("Mets", "Hops", "NA", "Phil"),620, replace = TRUE),
venue <- sample(c("Stadium","BallPark", "Concert Hall"),620, replace =   
TRUE)
)

#Create a list that contains the time series info for each
#combination of id + taxonomy
list1 <- dlply(df, .(id, taxonomy))

#Turn list1 into an XTS object so we can use it for time-series   
#analysis
xtsobject <- llply(list1, function(list) {
xts(x=list[,c("id","ticket_ct","price")],   
order.by=list[,"listing_date"])
})

#Create function to pass to lapply
arimafunc <- function(list) {
fity <- auto.arima(list$ticket_ct)
forecast <- forecast(fity,h=31)
return(forecast)
}

#Run the arimafunc
forecasts <- lapply(xtsobject,arimafunc)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...