如果r中有多个条件的语句

  • 本文关键字:条件 语句 如果 r
  • 更新时间 :
  • 英文 :


数据帧样本

你好,

如果"stim_type"=8且"response"=35,并且"stim__type"=7且"responses"=34,我正在尝试将正确的列设置为=1。任何其他组合则正确=0

如果不清楚,请告诉我,我们将不胜感激!

干杯

以下是一个使用dplyr:的解决方案

library(dplyr)

df %>% 
mutate(correct = ifelse((stim_type == 8 & response == 35) | (stim_type == 7 & response == 34), 1, 0))

这是一个使用base R的解决方案

df$correct <- ifelse((df$stim_type == 8 & df$response == 35) | (df$stim_type == 7 & df$response == 34), 1, 0)

在这两种情况下,你都在说";如果(stim_type=8 ANDresponse=35(OR(stim_type=7 ANDresponse=34(,则将correct的值更改为1,否则保持为零">

数据:

structure(list(stim_type = c(8, 7, 7, 8, 7, 8, 7, 7, 8, 8, 8, 
7, 8), response = c(35, 35, 34, 35, 34, 35, 34, 34, 35, 35, 35, 
34, 35), correct = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)), row.names = c(NA, 
-13L), class = c("tbl_df", "tbl", "data.frame"))

如果你尝试谷歌r if statement logical operators,你应该有你的答案,但这里有一个小预览if('stim_type' = 8 & 'response' = 35),可以在这里找到一些解释https://www.tutorialgateway.org/logical-operators-in-r/

相关内容

  • 没有找到相关文章

最新更新