Моя система R 3.5.3 с Rstudio 1.1.463
Установите фрейм данных, как показано ниже:
df <- data.frame(
cola = c('a','b','c','d','e','e','1',NA,'c','d'),
colb = c("A",NA,"C","D",'a','b','c','d','c','d'),stringsAsFactors = FALSE)
cats<-c('a','b','c','d','e','f','1')
Затем выполните df['cola'] <- lapply(df['cola'], function(x) factor(x,levels=cats,exclude = NULL,ordered = FALSE,nmax=6))
, получите ожидаемый результат.
Если изменить factor
на as.factor
на основе на этом посту , выполнить df['cola'] <- lapply(df['cola'], function(x) as.factor(x,levels=cats,exclude = NULL,ordered = FALSE,nmax=6))
, получит ошибку, как показано ниже:
Error in as.factor(x, levels = cats, exclude = NULL, ordered = FALSE, :
unused arguments (levels = cats, exclude = NULL, ordered = FALSE, nmax = 6)
В чем проблема?