Bonjour,
Suite à une mise à jour de R (spécifiquement le passage à la version 4.3.0), je n'arrive plus à réaliser une AFM. J'obtiens un message d'erreur. Voici un exemple de code :
## active variable groups
group_01 <- c("var_01", "var_02", "var_03", "var_04")
group_02 <- c("var_05", "var_06")
group_03 <- c("var_07", "var_08", "var_09")
group_04 <- c("var_10", "var_11")
group_05 <- c("var_12", "var_13", "var_14", "var_15")
## illustrative variable groups
group_06 <- c("var_16", "var_17")
group_07 <- c("var_18", "var_19", "var_20")
group_08 <- c("var_21", "var_22", "var_23", "var_24")
group_09 <- c("var_25", "var_26", "var_27")
## groups
groups <- c(group_01, group_02, group_03, group_04, group_05, group_06, group_07, group_08, group_09)
## length of groups
length_groups <- c(group_01 %>% length(), group_02 %>% length(), group_03 %>% length(), group_04 %>% length(), group_05 %>% length(),
group_06 %>% length(), group_07 %>% length(), group_08 %>% length(), group_09 %>% length())
## database for factorial analysis
database <- database[, groups]
## convert all variables to factor
database_fct <- as.data.frame(unclass(database),
stringsAsFactors = TRUE
)
## missing values imputation
database_mfa_impute <- imputeMFA(database_fct,
group = length_groups,
type = rep("n", length(length_groups))
)
## MFA
res <- MFA(database_fct,
group = taille_groupes_na,
name.group = c("group_01", "group_02", "group_03", "group_04", "group_05", "group_06", "group_07", "group_08", "group_09"),
type = rep("n", length(length_groups)),
num.group.sup = c(6:9),
ncp = 18,
tab.comp = database_mfa_impute,
graph = FALSE)
J'obtiens un message d'erreur :
Erreur dans type %in% "n" || type %in% "m" :
'length = 9' in coercion to 'logical(1)'
Avant la mise à jour de R, cela fonctionnait bien.
Quelqu'un a-t-il déjà été confronté à ce problème ? Une solution (sans revenir à une version antérieure de R) ?
Laurent