4

假设我有以下数据集,并且正在使用 R 中的 glm 运行回归模型。我有系数,但我想预测“下个月”的值(访问次数)。在这个例子中我将如何处理。

d <- data.frame(month = c("jan", "feb", "mar", "apr", "may", "june"),
                visit =  c( 1,  2,  4,  8, 16, 32),
                click =  c(64, 62, 36,  5,  6,  3),
                conv =  c(1, 3, 6, 2, 3, 8))
d
dFit <- glm(visit ~ click + conv, data=d)

对于 7 月,如何使用predict()R 中的函数来预测访问次数(响应变量)?

编辑:

我最终想要得到的是我所拥有的输出

Mon   Pred_clicks
jan   20
feb   25
mar   21
apr   31
may   15
june  21 
july  50

编辑2:

这不是我想要的输出

> predict(dFit)
        1         2         3         4         5         6 
-3.452974  1.223969 13.533457 12.235771 14.113888 25.345890 
4

2 回答 2

4

由于您使用data.frame包含列和的 a 训练模型month,因此您还必须提供这样的 a来预测值:clickconvdata.frame

 predict(dFit, data.frame(month="july", conv=mean(d$conv), click=mean(d$click)))

mean(d$conv)mean(d$click)是7 月份相应数量的预测值。如果您有7 月份的conv和的实际值,请在语句中替换它们以获得您的预测。click

但是,这可能不是您要寻找的,而且 GLM 回归可能不是此类时间序列数据的最佳模型。我认为您会希望使用VAR作为您的预测模型。

于 2013-08-27T21:42:56.763 回答
2

假设您有一个包含名为 7 月数据的数据框newdata,您只需执行以下操作:

predict(dFit,newdata)

如果您没有 7 月份的数据,那么这是不可能的。

于 2013-08-27T21:39:22.603 回答