【发布时间】:2018-04-11 01:30:08
【问题描述】:
我正在尝试根据条件(ifelse)将数据表分配给新变量。
当我运行第一行时,数据表 DT2 作为列表返回,并且只有 DT1 第一列的值。 当我运行第二行时,数据表作为包含所有列和行的数据表正确分配给变量。
为什么第一个替代方案不起作用?
library(data.table)
DT1 = data.table(x=rep(c("a","b","c"),each=3),y=c(1,3,6), v=1:9)
n <- 1
DT2 <- ifelse(n>0, DT1, NA) # line 1
ifelse(n>0, DT2 <- DT1, NA) # line 2
【问题讨论】:
-
你想要的输出是什么?你给
ifelse的两次电话对我来说都没有任何意义。 -
如果满足某个条件,我需要将数据表DT1分配给一个新变量作为数据表。
-
我不明白你的评论。
-
抱歉,编辑了第一条评论并附上了完整的答案。
-
请描述您希望将特定行(或列)分配给新数据框的条件。我想这与一些计数有关,可能是因为您使用
n作为条件。但目前 n>0 只是一个假值。您必须描述情况。
标签: r