我有一个名为CONDITIONALAPPROVAL
的专栏,其中包含很多字母N
。我想将所有这些N
重新编码为0
。下面是我正在使用的代码,但是当我仅在<NA>
s之后打印列时。
attach(my_data)
my_data$CONDITIONALAPPROVAL[my_data$CONDITIONALAPPROVAL=='N'] <- 0
my_data$CONDITIONALAPPROVAL
这似乎很简单,但它不起作用,当我输出该列时,只有<NA>
s应该有0
s。
答案 0 :(得分:0)
我们可以使用data.table
library(data.table)
setDT(my_data, key = "CONDITIONALAPPROVAL")[
, CONDITIONALAPPROVAL := as.character(CONDITIONALAPPROVAL)
][("N"), CONDITIONALAPPROVAL := "0"]
答案 1 :(得分:0)
首先使变量成为一个字符串(因为它似乎是一个因素):
my_data$CONDITIONALAPPROVAL <- as.character(my_data$CONDITIONALAPPROVAL)
然后:
my_data$CONDITIONALAPPROVAL[my_data$CONDITIONALAPPROVAL=='N'] <- 0
如果需要/相关,请转换为数字:
my_data$CONDITIONALAPPROVAL <- as.numeric(my_data$CONDITIONALAPPROVAL)