如何在R中的data.table对象中创建具有多个条件和NA的替换列?
要data.table在R中的对象中创建具有多个条件和NA的替换列,我们可以按照以下步骤操作-
首先,创建一个data.table对象。
然后,使用嵌套的ifelse函数创建具有多个条件的替换列。
示例
创建data.table对象
让我们创建一个data.table对象,如下所示-
library(data.table) x<-sample(c(NA,rpois(2,1)),25,replace=TRUE) DT<-data.table(x) DT输出结果
执行时,上述脚本生成以下内容output(thisoutputwillvaryonyoursystemduetorandomization)-
x 1: NA 2: NA 3: 2 4: 0 5: 2 6: 2 7: 0 8: NA 9: 0 10: 0 11: 0 12: NA 13: 2 14: NA 15: 0 16: 0 17: 2 18: 2 19: 2 20: 0 21: 2 22: NA 23: NA 24: 2 25: 0 x
用多个条件替换列
使用嵌套的ifelse函数为具有多个条件的列x创建替换列,如下所示-
library(data.table) x<-sample(c(NA,rpois(2,1)),25,replace=TRUE) DT<-data.table(x) DT$Replaced<-ifelse(DT$x %in% 0,"0",ifelse(DT$x %in% 2,"1",NA)) DT输出结果
x Replaced 1: NA <NA> 2: NA <NA> 3: 2 1 4: 0 0 5: 2 1 6: 2 1 7: 0 0 8: NA <NA> 9: 0 0 10: 0 0 11: 0 0 12: NA <NA> 13: 2 1 14: NA <NA> 15: 0 0 16: 0 0 17: 2 1 18: 2 1 19: 2 1 20: 0 0 21: 2 1 22: NA <NA> 23: NA <NA> 24: 2 1 25: 0 0 x Replaced