,我有以下數據集: https://www.dropbox.com/s/kdbfp8dx2fstz6w/ames_train.Rdata?dl=0的R - 由於迴歸誤差顯然1個因子變量
在我應該找到最好的線性模型的項目。爲了節省,我想確保我不會遺漏任何重要的東西,所以我包括了所有變量,並希望根據p值向後排除它們。
但是,例如當我運行時:
firstreg = lm(price ~ ., data = (ames_train))
或
bestmod=bas.lm(price ~ ., data=ames_train, prior="BIC", modelprior = uniform())
我得到
Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) :
i contrasti si possono applicare solo a variabili factor con 2 o più livelli
我不明白這裏的問題,但因爲我測試了它,並沒有任何的變量似乎也只有1個因素:
l=sapply(ames_train, function(x) is.factor(x))
m <- ames_test[, l]
ifelse(n <- sapply(m, function(x) length(levels(x))) == 1, "DROP", "NODROP")
我可能忽略了一些小事,但我有點卡住了。任何幫助表示讚賞。其中,在模型中列NA
感謝
'Utilities'只有一個級別存在於數據中,沒有一行沒有丟失數據。你可以複製出錯信息,如下所示:'lm(price〜。,data = data.frame(price = 1:10,x = rep(c(「A」,NA),20),y = rep(c (NA, 「B」,NA, 「C」),10)))'。數據框在每一行中缺少數據,其中一個預測值列只有一個級別。 – eipi10