我有一个data.frame,我想在选择一些行值后重新编码一些特定的列。 我的data.frame看起来像这样。第一列ID,第二列和第三列是我想用于选择特定行的值,第4列及以上是我想要重新编码的值存储。
我已将要重新编码的列名存储在向量中 - > list1的
df <- data.frame(letters[1:10],letters[1:2],letters[3:4],rep(0:1,each=5),rep(1:0,each=5),rep(1:0,each=5),rep(1:0,each=5))
names(df)<-c("Sample","cond1","cond2","ge1","ge2","ge3","ge4")
df
list1 <- c("ge1","ge3")
我想得到什么: 当我选择cond1 == a和cond2 == c时,我可以在这个案例列ge1和ge3中重新编码特定列的值(在向量中列出)。
a.e如果条件满足则ge1和ge3重新编码为NA。
我尝试过这样的事情:
df$cond1[df$cond1 == "a" & df$cond2 =="c"]
还有很多,但我总是失败!
答案 0 :(得分:1)
您想要将特定列的条件行设置为NA
?
df[df$cond1=="a" & df$cond2=="c", list1] <- NA