predic.lm () con un nivel de factor desconocido en los datos de prueba
Estoy ajustando un modelo para factorizar datos y predecir. Si elnewdata
enpredict.lm()
contiene un único nivel de factor desconocido para el modelo,todas depredict.lm()
falla y devuelve un error.
¿Hay una buena manera de tenerpredict.lm()
¿Devuelve una predicción para esos niveles de factores que conoce el modelo y NA para niveles de factores desconocidos, en lugar de solo un error?
Código de ejemplo:
foo <- data.frame(response=rnorm(3),predictor=as.factor(c("A","B","C")))
model <- lm(response~predictor,foo)
foo.new <- data.frame(predictor=as.factor(c("A","B","C","D")))
predict(model,newdata=foo.new)
Me gustaría que el último comando devuelva tres predicciones "reales" correspondientes a los niveles de factor "A", "B" y "C" y unNA
correspondiente al nivel desconocido "D".