【发布时间】:2020-01-16 12:18:59
【问题描述】:
我正在尝试将我的因子变量中的级别从
levels(data$VAL_NETEJA)
得到:
"0 = PÈSSIMA GESTIÓ" "1" "2" "3" "4" "5" "6" "7" "8" "9" "10 = > >> > >EXCEL·LENT GESTIÓ" "NO HO SAP" "NO CONTESTA"
使用此代码
data %>%
filter(!is.na(VAL_NETEJA))%>%
transmute(VAL_NETEJA=case_when(
VAL_NETEJA == "10 = EXCEL·LENT GESTIÓ"~ "10",
VAL_NETEJA == "0 = PESSIMA GESTIÓ"~ "0",
TRUE ~ as.character(VAL_NETEJA)
))%>%
filter(!is.na(VAL_NETEJA))%>%
transmute(VAL_NETEJA=case_when(
VAL_NETEJA == "NO HO SAP"~ "NA",
VAL_NETEJA == "NO CONTESTA"~ "NA",
TRUE ~ as.character(VAL_NETEJA)
))%>%
它可以工作,"0 = PESSIMA GESTIÓ"~ "0" 除外。我试图尝试使用和不使用口音,但它仍然不会改变它。我可以使用类似于 contains 或以 for case_when 开头的函数以某种方式解决此问题吗?
【问题讨论】:
标签: rename case-when factors levels recode