我在数据框+------------------+ +------------------+
|+----------------+| |+----------------+|
|| front || || back ||
|+----------------+| |+----------------+|
|+----------------+| |+----------------+|
|| front || || front ||
|+----------------+| |+----------------+|
中有一个因子变量Clic_1
。我想写一个函数来改变因式变量的值。
oldata
我尝试了这个功能,但它给了NA
head(oldata$CliC_1)
[1] 4 1 5 3 5 5
Levels: 1 2 3 4 5
答案 0 :(得分:2)
您不需要自定义功能或relevel
。只需使用ifelse
:
factor(ifelse(oldata$CliC_1==1, 'Good', 'Bad'))
# Bad Good Bad Bad Bad Bad
答案 1 :(得分:2)
另一种方式是
factor(oldata$CliC_1 != 1, labels = c('Good', 'Bad'))
# [1] Bad Good Bad Bad Bad Bad
# Levels: Good Bad