我在将(1)是和(2)否更改为1和0时遇到麻烦吗?
我尝试了这些,但是它们不起作用
h <- lapply(df$LIC, function(x) as.integer(x=="(1) Yes"))
df$LIC.eq('(1) Yes').mul(1)
CA <- ifelse(df$LIC=="(1) Yes", 1, 2)
j<-as.integer(as.character(df$LIC)=="(1) Yes")
k<-as.numeric(as.factor(df$LIC)=="(1) Yes")
答案 0 :(得分:2)
您可以使用base r
进行操作df$LIC[(df$LIC) =="(1) Yes" ]<-"1"
df$LIC[(df$LIC) =="(2) No" ]<-"0"
答案 1 :(得分:0)
tidyverse
解决方案,没有突变。
x <- c("yes", "no", "other", "no", "some stuff", "yes")
dplyr::recode(x, yes = 1, no = 0, .default = NA_real_)
#> [1] 1 0 NA 0 NA 1
要将其与名为df
的数据框一起使用,可以使用:
library(dplyr)
df %>%
mutate(LIC = recode(LIC, `(1) Yes` = 1, `(2) No` = 0, .default = NA_real_))