У меня есть кадр данных с столбцами числового и упорядоченного факторов. У меня много значений NA, поэтому им не присвоен ни один уровень. Я изменил NA на "No Answer", но уровни столбцов факторов не содержат этого уровня, так вот как я начал, но я не знаю, как закончить его элегантным способом:
addNoAnswer = function(df) {
factorOrNot = sapply(df, is.factor)
levelsList = lapply(df[, factorOrNot], levels)
levelsList = lapply(levelsList, function(x) c(x, "No Answer"))
...
Есть ли способ непосредственного применения новых уровней к столбцам факторов, например, примерно так:
df[, factorOrNot] = lapply(df[, factorOrNot], factor, levelsList)
Конечно, это работает неправильно.
Я хочу, чтобы уровень сохраненных уровней и уровень "Нет ответа" были добавлены в последнее место.