У меня есть два фрейма данных, в которых пропущенные значения не вводятся как NA
, но их просто нет.Это выглядит примерно так.
df1
id phase assess_pday totasses_pphase
<dbl> <dbl> <dbl> <dbl>
1 1 1 1 1
2 1 1 3 3
3 1 1 2 5
4 1 1 3 6
5 1 1 1 7
6 1 2 3 3
7 1 2 1 7
8 1 2 2 8
9 1 2 3 9
10 2 1 1 1
11 2 1 3 3
12 2 1 2 5
13 2 1 3 9
14 2 2 3 3
15 2 2 2 5
16 2 2 3 6
17 2 2 1 7
18 2 2 2 8
19 2 2 3 9
20 3 1 1 1
21 3 1 2 2
22 3 1 1 4
23 3 1 3 6
24 3 1 2 8
25 3 1 3 9
26 3 2 3 3
27 3 2 2 5
28 3 2 3 9
29 4 1 1 1
30 4 1 2 2
31 4 1 3 6
32 4 1 1 7
33 4 1 2 8
34 4 1 3 9
35 4 2 1 1
36 4 2 3 3
37 4 2 1 7
38 4 2 2 8
39 4 2 3 9
df2
id phase assess_pday totasses_pphase score
<dbl> <dbl> <dbl> <dbl> <dbl>
1 1 1 1 1 3
2 1 1 1 2 2
3 1 2 1 1 1
4 1 2 1 2 0
5 2 1 1 1 0
6 2 1 1 2 1
7 2 2 1 1 0
8 2 2 1 2 0
9 3 1 1 1 4
10 3 1 1 2 3
11 3 2 1 1 3
12 3 2 1 2 3
13 4 1 1 1 2
14 4 1 1 2 2
15 4 2 1 1 1
16 4 2 1 2 1
Чтобы дать некоторый контекст: это интенсивное продольное исследование, состоящее из двух этапов, в каждом из которых каждый участник оценивался несколько раз в день.Перед каждым этапом проводилась перекрестная оценка, чтобы узнать уровень переменной.df1
относится к продольной части, а df2
- к поперечной части.Переменные: id
означает идентификатор.phase
означает либо фазу 1, либо фазу 2. assess_pday
означает номер оценки в течение этого дня (максимум 3).totasses_pphase
означает номер этой оценки в течение периода (максимум 12).оценка означает оценку по переменной
Проблема заключается в том, что я не могу присоединиться к столбцу оценки с использованием идентификатора и totasses_pphase
в качестве ключей, поскольку некоторые значения totasses_pphase
в df1
отсутствуют.Итак, я хочу добавить 1 и 2 из totasses_pphase
, которые отсутствуют в df1
, а затем присоединиться к столбцу оценок df2
на основе идентификатора и totasses_pphase
.
Iпопытался использовать полную функцию:
df3 <- complete(df1, nesting(id), totasses_pphase = 1:2)
Но это не работает, как я хочу.