我尝试使用forcats::fct_recode将R因子变量中的所有“a”替换为NA字符。这是我尝试的:
fct <- forcats::as_factor(c("a", "b"))
fct %>% forcats::fct_recode("c" = "a") #works
fct %>% forcats::fct_recode(NA = "a") #error
fct %>% forcats::fct_recode(NA_character_ = "a") #error
有没有一种方法可以通过fct_recode实现我的目标?
3条答案
按热度按时间ozxc1zmp1#
您需要使用反引号将值转换为
NA
:然而,请注意,尽管这“看起来”像
NA
,但它不是真实的NA
,而是字符串"NA"
。要使其成为真实的的
NA
,请将其替换为NULL
。cczfrluj2#
我们可以使用
na_if
hjzp0vay3#
另一种
forcats
解决方案是使用fct_na_level_to_value
,它是专门为这个问题设计的: