假设我有以下数据并且正在运行回归模型:
df=data.frame(income=c(5,3,47,8,6,5),
won=c(0,0,1,1,1,0),
age=c(18,18,23,50,19,39),
home=c(0,0,1,0,0,1))
一方面,我运行一个线性模型来预测收入:
md1 = lm(income ~ age + home + home, data=df)
其次,我运行一个logit模型来预测won变量:
md2 = glm(factor(won) ~ age + home, data=df, family=binomial(link="logit"))
对于这两个模型,我想知道如何生成具有预测器响应类别,拟合值和模型预测值的表或数据框。
因此对于线性模型,类似于:
age fitted_income predicted_income
18 3 5
23 3 3
50 4 2
19 5 5
39 6 4
home fitted_income predicted_income
0 5 6
1 3 9
也许应该针对每个数据点。因此,对于x_i数据点,拟合值和预测值是:
id age fitted_income predicted_income
1 18 3 5
2 23 3 3
3 50 4 2
4 19 5 5
5 39 6 4
从统计的角度来看,这样的工作有用吗?为什么或者为什么不?
如何在R中完成此操作?(看了一下names(md1),发现我可以从模型中获取什么,但是还没有继续下去)
谢谢!
1
RE#2:stat.ethz.ch/R-manual/R-patched/library/stats/html/...。关于#1:对什么有用?您到底想完成什么?
—
ub
有助于判断模型对于每个单独的数据点是否“可预测”。我想查看任何行/ ID,并且能够比较真实/拟合值和预测值,以了解其“正确性”。
—
ATMathew '08
如果您想扫描表格以查看实际响应相对于协变量的变化,我想它可能会很有用。我不明白您的用语。拟合值和预测值应相同。观察值和拟合值应该不同。
—
Michael R. Chernick
可以尝试以下方法:x = cbind(df,md1 $ fitted.values)colnames(x)= c(colnames(df),“预测”)
—
RioRaider 2012年
—
ub