Prefiero preocuparme por su capacidad de ajuste de parámetros y su interfaz uniforme, pero he observado que siempre requiere conjuntos de datos completos (es decir, sin NA), incluso si el modelo "desnudo" aplicado permite NA. Eso es muy molesto, ya que uno debe aplicar métodos de imputación laboriosos, que no son necesarios en primer lugar. ¿Cómo se puede evadir la imputación y seguir utilizando las ventajas de los cuidados?
r
missing-data
data-imputation
caret
Fredrik
fuente
fuente

Respuestas:
Para la función train en caret, puede pasar el parámetro na.action = na.pass y no preprocesar (no especifique preProcess, déjelo como su valor predeterminado NULL). Esto pasará los valores de NA sin modificar directamente a la función de predicción (esto hará que las funciones de predicción que no admiten valores faltantes fallen, para aquellos que necesitaría especificar preProcess para imputar los valores faltantes antes de llamar a la función de predicción). Por ejemplo:
En este caso, C5.0 manejará los valores faltantes por sí mismo.
fuente
traintener lana.action = na.passopción establecida, se producirá el siguiente error:Something is wrong; all the RMSE metric values are missing¿Has intentado recodificar las NA? Algo> 3 desviaciones estándar fuera de sus datos (por ejemplo, -12345) debería alentar a C5.0 a predecirlas por separado, como sucede con las NA.
fuente
Creo que su solución sería imputar los valores mientras usa la función predict () .
Ver
?predict.trainpara más detalles.Puede usar
na.omitpara permitir que caret impute valores. Por ejemplo:de http://www.inside-r.org/packages/cran/caret/docs/predict.train
Otra solución sería imputar mientras se preprocesan los datos:
de http://www.inside-r.org/node/86978
fuente