“模拟”具有不同预测值的大量回归

时间:2014-01-30 22:39:27

标签: r

假设我有以下数据,我有兴趣研究一些反事实。特别是,我想研究一下,如果收入发生变化,预计收入是否会发生变化。我能想到的最好的方法是编写一个循环来运行这个回归1:n。但是,如何在循环运行时对数据框进行调整。我真的希望有一个基本的R函数或某个包可以指向我的东西。

df = data.frame(year=c(2000,2001,2002,2003,2004,2005,2006,2007,2009,2010),
                income=c(100,50,70,80,50,40,60,100,90,80),
                age=c(26,30,35,30,28,29,31,34,20,35),
                gpa=c(2.8,3.5,3.9,4.0,2.1,2.65,2.9,3.2,3.3,3.1))
df

mod = lm(income ~ age + gpa, data=df)
summary(mod)

在查看年龄,gpa和收入之间的关系时,以下是一些值得考虑的反事实。

# What is everyone in the class had a lower/higher gpa?
df$gpa2 = df$gpa + 0.55
# what if one person had a lower/higher gpa?
df$gpa2[3] = 1.6
# what if the most recent employee/person had a lower/higher gpa?
df[10,4] = 4.0

无论有没有循环,最好的方法是“模拟”大量(1000+)个回归模型,以便检查各种反事实,然后将这些结果保存在某些数据结构中?是否有一个“反事实”分析包可以为我节省一些工作?

0 个答案:

没有答案