首页 > 解决方案 > 可以处理许多自变量的 Predict() 替代方案。用于根据过去的训练数据和调查数据预测未来的站点流量

问题描述

我正在尝试根据调查数据(iv1、iv2、iv3 等)预测未来的网站流量。该模型应该在之前的数据上进行训练,并使用已经获得的数据来预测未来的站点流量。

回归包括完整的数据框,并考虑了 q 缺失的未来站点流量数据。测试数据仅为一月和二月的月份,并且有所有的调查数据,但没有网站流量,因为它还没有发生。

我的数据看起来有点像这样:

date <- c(3-28-2019, 4-28-2019, 5-28-2019, 6-28-2019, 7-28-2019, 8-28-2019,
          9-28-2019, 10-28-2019, 11-28-2019, 12-28-2019, 1-28-2020, 2-28-2020)
sitetraffic <- c(80, 99, 70, 65, 88, 90, 76, 65, 67, 68, NA, NA)
iv1 <- c(82, 93, 72, 61, 89, 93, 71, 63, 64, 65, 82, 62)
iv2 <- c(80, 99, 82, 62, 70, 65, 88, 90, 76, 93, 71, 99)
iv3 <- c(71, 63, 64, 71, 99, 76, 65, 67, 93, 72, 68, 89)
#etc

这是代码:

q = !is.na(d$revenue) #q handles the extra NA values in the future site traffic
lm = lm(sitetraffic ~ iv1 + iv2 + iv3 + iv4 + iv5 + iv6 + iv7 + iv8 + iv9 
        + iv10 + iv11 + iv12 + iv13 + iv14, data = dataframe, q)
fcast <- predict(lm, test)

当我只包含大约 10 个自变量时,此代码按预期进行预测,但如果我不再使用,我只会得到 NA。我也尝试过 predict.lm() 和 prediction(),但都没有使用所有的 iv。任何其他更强大的 predict() 版本可以处理更多的 iv 吗?

标签: rmachine-learningpredictionforecasting

解决方案


推荐阅读