重新编码R中单列的值(包括NULL值)

时间:2018-11-22 02:40:51

标签: r null rstudio

我有一个名为data.comp的数据框,其中有一个名为RELAFFIL的列。列中的值范围是22到107,但是也有许多NULL值。我想将所有NULL值重新编码为0,对于所有其他情况重新编码为1。我尝试了多种方法,但都没有奏效,仅供参考,下面列出了我尝试过的方法。仅供参考,我还加载了以下软件包:dplyr,readr和car。

data.comp$RELAFFIL <- with(data.comp, ifelse(is.null(data.comp$RELAFFIL), 0, 1))

data.comp$RELAFFIL[is.null(data.comp$RELAFFIL)] <- 0

data.comp$RELAFFIL[is.finite(data.comp$RELAFFIL)] <- 1

car::recode(data.comp$RELAFFIL, "NULL = 0; else = 1")

data.comp$RELAFFIL <- data.comp$RELAFFIL %>% base::ifelse(is.null(data.comp$RELAFFIL), 0, 1)

1 个答案:

答案 0 :(得分:0)

为此,Base R解决方案是添加文件,将NA字符串提到为null。

下提供了代码
data.comp <- read.csv("your csv file",stringsAsFactors = F,na.strings = c("null"))
data.comp[is.na(data.comp)] <- 0

data.comp$RELAFFI_new <-ifelse(data.comp$RELAFFIL == 0,0,1)

这将提供您所需的输出