[英]Compute multiple variables in R
我有一系列反应时间:从 trail1 到 trail100,然后是 answer1 到 answer100。
我想要在 R 中计算的新变量:如果 trail1 的值是 1 到 15,那么对应的 answer1 应该是 answer1 的值。 如果 trial1 为 0,则对应的 answer1 应为 -1
ID <- c("1", "2", "3")
Trial1 <- c("3", "0", "8")
Trial2 <- c("5", "6", "15")
Trial3 <- c("14", "15", "10")
Answer1 <- c("489", "368", "-1")
Answer2 <- c("363", "967", "671")
Answer3 <- c("700", "1201", "890")
df <- data.frame(ID, Trial1, Trial2, Trial3, Answer1, Answer2, Answer3)
正确的新变量(new_answer1 到 100)应该是:
ID <- c("1", "2", "3")
Trial1 <- c("3", "0", "8")
Trial2 <- c("5", "6", "15")
Trial3 <- c("14", "15", "10")
New_Answer1 <- c("489", "-1", "-1")
New_Answer2 <- c("363", "967", "671")
New_Answer3 <- c("700", "1201", "890")
df1 <- data.frame(ID, Trial1, Trial2, Trial3, New_Answer1, New_Answer2, New_Answer3)
谢谢
如果我理解正确,则需要一个简单的表达式:
New_Answer1 <- Answer1
New_Answer1[Trial1==0] <- -1
出去:
> New_Answer1
[1] "489" "-1" "-1"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.