重新编码列和行的子集

时间:2014-03-24 14:26:39

标签: r

我有一个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"] 还有很多,但我总是失败!

1 个答案:

答案 0 :(得分:1)

您想要将特定列的条件行设置为NA

df[df$cond1=="a" & df$cond2=="c", list1]  <- NA