je l'ensemble de données suivantes: https://www.dropbox.com/s/kdbfp8dx2fstz6w/ames_train.Rdata?dl=0R - erreur de régression due à des variables apparemment 1 factoriels
Dans un projet que je suis censé trouver le meilleur modèle linéaire. Pour économiser, je voulais vous assurer que je ne quitte pas quoi que ce soit important, donc j'inclus toutes les variables et je voulais en arrière les éliminer basées sur les valeurs p etc.
Cependant, quand je par exemple courir:
firstreg = lm(price ~ ., data = (ames_train))
ou
bestmod=bas.lm(price ~ ., data=ames_train, prior="BIC", modelprior = uniform())
Je reçois
Error in `contrasts<-`(`*tmp*`, value = contr.funs[1 + isOF[nn]]) :
i contrasti si possono applicare solo a variabili factor con 2 o più livelli
Je ne comprends pas la question ici cependant, parce que je l'ai testé et aucune des variables semble avoir seulement 1 facteur:
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")
probablement quelque chose que je donnent trivial mais je suis un peu coincé. Toute aide est appréciée.
grâce
'Utilities' n'a qu'un seul niveau présent dans les données, et il n'y a pas une seule ligne sans données manquantes. Vous pouvez répliquer l'erreur que vous obtenez comme suit: 'lm (prix ~., Données = data.frame (prix = 1: 10, x = rep (c (" A ", NA), 20), y = rep (c (NA, "B", NA, "C"), 10))). La trame de données a des données manquantes dans chaque ligne et l'une des colonnes de prédicteur n'a qu'un seul niveau présent. – eipi10