2017-01-03 186 views
1

我目前正在研究一个大学项目,以预测到达全天候商店的客户数量。我使用的是一家商店的数据,其中包含(某些年份)某一年每位客户的日期和时间。R中的多重线性回归的交叉验证

我已经把这个数据集分成了一个训练集和一个交叉验证集。此外,我已经将训练集与同一年的天气数据进行汇总和合并,以找出例如高温导致更多客户的情况。

合并数据的简化版本看起来是这样的:

| ServedCustomers | Month | Day | Hour | Temperature (C°) | Rain(binary) 
| --------------- | ----- | --- | ---- | ---------------- | ------------ 
| 1    | 12 | 31 | 12 | 9.2    | 0 
| 0    | 12 | 31 | 13 | 9.8    | 1 
| 2    | 12 | 31 | 14 | 10.1    | 0 

对于今年的每个小时,我有分别担任以及相应的气象数据的客户数量。

我已经在R中创建了一个多元线性回归模型来预测几乎每一个其他变量作为预测变量的客户数量。使用summary()命令,到目前为止,MSE,R^2和其他统计数据看起来不错。

现在我想检查相同的模型是否与交叉验证集一起工作。为此,我已经合并了相同的天气数据,以获得与上表中结构相同的数据集,只有不同数量的客户。

但是,这就是我目前卡住的地方。对模型和交叉验证集合使用predict.lm()函数似乎可行,但只能得到预测值和很少的附加信息。

有什么方法可以创建模型对其他数据集的工作情况的总结?类似于summary()命令,但对于线性模型最初不基于的数据集?

回答

0

您可以计算均方误差和均方根误差来查看模型的效果。

1)把你的系数乘以你训练数据中协变量的矩阵。 yhat =(X * b)

2)以你的训练集为准,并将这些与上面的yhat区别开来。

3)平方误差

4)采取的答案的平方根=均方根误差

值越低意味着更好的配合整体