如何创建一个表示两个二分变量一致的变量

时间:2014-09-11 22:10:48

标签: r binary

我想创建一个包含1和0的新变量.A 1表示评估者之间的协议(两个评估者都是1或两个评估者),零表示不同意。

rater_A <- c(1,0,1,1,1,0,0,1,0,0)
rater_B <- c(1,1,0,0,1,1,0,1,0,0)
df <- cbind(rater_A, rater_B)

新变量类似于我手动创建的以下向量:

df$agreement <- c(1,0,0,0,1,0,1,1,1,1)

也许有一个我不知道的包或功能。任何帮助都会很棒。

1 个答案:

答案 0 :(得分:1)

您可以将df创建为data.frame(而不是使用cbind)并使用withinifelse

rater_A <- c(1,0,1,1,1,0,0,1,0,0)
rater_B <- c(1,1,0,0,1,1,0,1,0,0)
df <- data.frame(rater_A, rater_B)
##
df <- within(df,
  agreement <- ifelse(
    rater_A==rater_B,1,0))
##
> df
   rater_A rater_B agreement
1        1       1         1
2        0       1         0
3        1       0         0
4        1       0         0
5        1       1         1
6        0       1         0
7        0       0         1
8        1       1         1
9        0       0         1
10       0       0         1