说我在R
中输入了以下数据G <- c(1,1,0,0,0,0,0,0,0)
H <- c(0,1,1,0,0,0,0,0,0)
I <- c(0,0,0,0,1,1,0,0,0)
J <- c(0,0,0,1,0,1,0,0,0)
K <- c(0,0,0,0,0,0,1,1,0)
L <- c(0,0,0,0,0,0,0,1,1)
list <- data.frame(G,H,I,J,K,L)
我想分配
答案 0 :(得分:1)
这是一个简单的解决方案,通过创建变量然后使用子集为其分配值。这对你的目的是否足够?
list$Z <- NA
list$Z[list$G|list$H] <- "a"
list$Z[list$I|list$J] <- "b"
list$Z[list$K|list$L] <- "c"
list
编辑:
根据{{3}}的建议,使用within()
代码可以更清晰,更易读(也可能更高效):
list$Z <- NA
within(list, Z[G|H]<-"a"; Z[I|J]<-"b"; Z[K|L]<-"c")