我有一个数据文件,每个参与者一行(根据他们参与的研究命名为1-x)。我想检查是否所有参与者都存在于数据集中。这是我的玩具的数据集,PERSONID是参与者,研究他们在参加研究检查计数器变量中的步骤是否丢失
df <- read.table(text = "personid study measurement
1 x 23
2 x 32
1 y 21
3 y 23
4 y 23
6 y 23", header=TRUE)
看起来像这样:
personid study measurement
1 1 x 23
2 2 x 32
3 1 y 21
4 3 y 23
5 4 y 23
6 6 y 23
所以对于Y,我很想念参与者2和5 。我如何自动检查?我尝试添加一个计数器变量并将该计数器变量与参与者ID进行比较,但是一旦缺少一个参与者,比较就没有意义,因为对齐关闭。
df %>% group_by(study) %>% mutate(id = 1:n(),check = id==personid)
Source: local data frame [6 x 5]
Groups: date [2]
personid study measurement id check
<int> <fctr> <int> <int> <lgl>
1 1 x 23 1 TRUE
2 2 x 32 2 TRUE
3 1 y 21 1 TRUE
4 3 y 23 2 FALSE
5 4 y 23 3 FALSE
6 6 y 23 4 FALSE
什么是你想在这里所需的输出?你只是试图添加这个“检查”列,以便数据库中的每一行都是真的,如果该参与者在每个研究中? – MrFlick
也许“检查”列的想法不理想,我期望的输出是沿着“y缺少参与者2和5”的线,不关心格式。 – Esther