基于条件语句将新列添加到数据框

时间:2016-04-28 12:15:23

标签: r

我有一个df

a b
0 0
1 1
2 1
0 0

我想添加列c,以便列a=1b=1 c = NA 我该怎么做?我试过if ifsese但是我得到了错误 谢谢

2 个答案:

答案 0 :(得分:1)

您似乎一直在随意提出越来越多的问题,但如果您只是想要定位当前b==1 & a==1,那么就这样做。

df[which(b == 1 & a == 1),c('c')] <- NA
#df[which(b == 1 & a == 1),]$c <- NA -- alternate.
#df[(b == 1 & a == 1), ]$c <- NA -- another.

这将定位您想要的内容,并假设您已经创建了一个列c。如果不是......只需使用填充0或您想要的填充物创建它。

df$c <- "filler";

答案 1 :(得分:0)

使用data.table

library(data.table)
 setDT(df)[, c:= 0][a==1 & b==1, c:= NA][]