重新编码现有数据帧的子集

时间:2011-02-01 17:45:47

标签: r

假设:

x <- rep(1:6, 26)
y <- rep(letters, 6)
df.test <- data.frame(x,y)

我想要做的是重新编码所有列y ==“a”,x为1 = 6,2 = 5,3 = 4,4 = 3,5 = 2,6 = 1

2 个答案:

答案 0 :(得分:3)

只需索引?

x <- rep(1:6, 26)
y <- rep(letters, 6)
df.test <- data.frame(x,y)

df.test$x[df.test$y=="a"]=7-df.test$x[df.test$y=="a"]

答案 1 :(得分:2)

df.test$x[df.test$y == "a"] <- 7 - df.test$x[df.test$y == "a"]