为什么在提取残差时无法找到我的因子名称?

时间:2014-02-01 09:46:12

标签: r regression

我正在处理一些选举数据,试图通过“州”和“选举”将其分开。 我使用状态和年份的固定效果运行回归(如下所示),得到我的摘要数据,并且一直在尝试使用resid()函数来提取残差。

m5 <- lm(demVote ~ state*year, data=presidentialElections)

plot(resid(m5) ~ fitted(m5))
resid.m5 <- resid(m5)

我认为这一切都完美无缺。然而,这里是我迷失的地方 - 如果我做总结(resid.m5)(我把提取的残差放在哪里,或者我认为),我似乎无法找到我的因子名称了。如果我想查看每个州或每年的残差(例如,按州/年的平均值),那么我如何使用resid()函数访问它?谢谢!

1 个答案:

答案 0 :(得分:1)

正如之前的评论中所述,您必须意识到返回的残差与您在数据集中的观察结果的顺序相同。

以下是使用每个R安装附带的虹膜数据集的示例(可能是非常荒谬的回归):

data(iris)
m5 <- lm(Sepal.Length ~ Species*Sepal.Width, data=iris)
resid.m5 <- resid(m5)

dta.complete <- data.frame(iris, r.m5=resid.m5)

这里,残差与原始数据组合。它可能有点不正统,但为什么不把事情放在一起。现在,您可以根据需要使用所有经典子集。例如:

with(dta.complete, by(r.m5, Species, mean))
祝你好运!