【发布时间】:2014-03-24 21:54:11
【问题描述】:
我有一个线性 model1<-lm(divorce_rate~marriage_rate+median_age+population),其杠杆图在 28 处显示异常值(“内华达州”的状态变量 id)。我想在数据集中指定一个没有内华达州的模型。我尝试了以下但卡住了。
data<-read.dta("census.dta")
attach(data)
data1<-data.frame(pop,divorce,marriage,popurban,medage,divrate,marrate)
attach(data1)
model1<-lm(divrate~marrate+medage+pop,data=data1)
summary(model1)
layout(matrix(1:4,2,2))
plot(model1)
dfbetaPlots(lm(divrate~marrate+medage+pop),id.n=50)
vif(model1)
dataNV<-data[!data$state == "Nevada",]
attach(dataNV)
model3<-lm(divrate~marrate+medage+pop,data=dataNV)
上面代码的最后一行给了我
Error in model.frame.default(formula = divrate ~ marrate + medage + pop, :
variable lengths differ (found for 'medage')
【问题讨论】:
-
这样做后我收到了
Error in lm.fit(x, y, offset = offset, singular.ok = singular.ok, ...) : 0 (non-NA) cases。 -
你为什么使用
attach?数据已“附加” -
即使我不附加它,仍然给我同样的错误。变量结构给了我
str(state) chr [1:49] "Alabama" "Alaska" "Arizona" "Arkansas" "California" "Colorado" "Connecticut" "Delaware" "Florida" "Georgia" "Hawaii" ...这可能是问题吗?顺便说一下,我使用的数据来自http://www.stata-press.com/data/r8/census.dta。