Я пытаюсь создать функцию, которая преобразует тип данных фрейма данных в factor
, если столбец имеет тип char
, иначе я ничего не меняю.Но проблема здесь в том, что я могу сделать то же самое с оператором if else
, но не использую оператор if_else
. Вот код для того же примечания - я использую набор данных titanic
changetype = function(x)
if(class(x) == "character") as.factor(x) else x
changetype2 = function(x)
if_else(is.character(x),as.factor(x),x)
result1 = sapply(Train$Embarked, changetype)
result2 = sapply(Train$Embarked, changetype2)
result1
работает нормально, тогда как result2
выдает ошибку
Error: `false` has type 'character' not 'integer'
Пожалуйста, помогите Спасибо