Estoy usando caret para ejecutar un bosque aleatorio validado cruzado sobre un conjunto de datos. La variable Y es un factor. No hay NaN's, Inf's o NA's en mi conjunto de datos. Sin embargo, cuando ejecuto el bosque aleatorio, obtengo
Error in randomForest.default(m, y, ...) :
NA/NaN/Inf in foreign function call (arg 1)
In addition: There were 28 warnings (use warnings() to see them)
Warning messages:
1: In data.matrix(x) : NAs introduced by coercion
2: In data.matrix(x) : NAs introduced by coercion
3: In data.matrix(x) : NAs introduced by coercion
4: In data.matrix(x) : NAs introduced by coercion
¿Alguien tiene ideas sobre si este error es causado por la NA introducida por la coerción? Si es así, ¿cómo puedo evitar tal coerción?
r
random-forest
caret
regression
prediction
fitting
social-science
poisson-distribution
distributions
characteristic-function
bayesian
prior
regression
normal-distribution
interaction
nonparametric
skewness
svm
standard-deviation
standard-error
regression-coefficients
igraph
natural-language
word2vec
word-embeddings
regression
machine-learning
sampling
r
regression
machine-learning
random-forest
ensemble
sampling
unbiased-estimator
proof
estimators
mse
probability
conditional-probability
bayes
anova
missing-data
neural-networks
recommender-system
r
confidence-interval
sample
multiple-imputation
r
time-series
forecasting
mase
Info5ek
fuente
fuente
Probablemente la causa es que tiene algunas variables de caracteres en su marco de datos.
Convierta todas las variables de caracteres en factor en una línea:
library(dplyr) data_fac=data_char %>% mutate_if(is.character, as.factor)
fuente
mutate_if()
para esto ... ¡gracias!Como se muestra en la advertencia, hubo 28 errores que resultaron ser el número de columnas con tipos de datos de caracteres ("chr"). Forzar estas columnas a los factores permitidos para que comience la ejecución.
fuente