根据data.table

时间:2017-09-08 09:49:52

标签: r data.table

这是我关于SO的第一个问题...请保持愉快。 :)

我有一个data.table,其中多列是boolean。我现在想要创建一个新列,该列取决于哪个布尔列为真。

即。

DT <- data.table(a = c(F,T,F), b = c(F,F,F), c = c(F,F,T), d = c(F,F,F))
DT
       a     b     c     d
1: FALSE FALSE FALSE FALSE     
2:  TRUE FALSE FALSE FALSE
3: FALSE FALSE  TRUE FALSE

结果应该是这样的:

DT
       a     b     c     d  new column
1: FALSE FALSE FALSE FALSE      "none"
2:  TRUE FALSE FALSE FALSE  "column a"
3: FALSE FALSE  TRUE FALSE  "column c"

想象一下,有很多列,因此嵌套的ifelse语句实际上不可行。原始数据表中还有一些列不是布尔值,不应修改。

感谢您的帮助。 :)

0 个答案:

没有答案