基于条件语句添加新列的数据帧
你似乎一直在问随机问题越来越多,但如果你只是想目标只有当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";
你不要紧d在你的第一行中有'which'和'c',你需要告诉在哪里寻找变量(所以'df [df $ b == 1&df $ a == 1,“c”] Cath
这只是创建了一个充满NA的列。当然,这可能没有错,因为我们现在都在猜测 –
@RichardScriven,如果那里已经有c的话。 –
使用data.table
library(data.table)
setDT(df)[, c:= 0][a==1 & b==1, c:= NA][]
你可以尝试'C( “O”,NA)(A == 0)+ 1]' – Cath
对不起,恐怕它确实增加了正确charachters到列'b' – HoHoHo
要做到这一点,您需要实际完成这项任务:'df $ b