Я надеюсь, что кто-нибудь сможет мне помочь Ниже приведен пример данных, над которыми я работаю:
> print(sampleinput)
Time ACTIVITY_X ACTIVITY_Y ACTIVITY_Z
1: 6/19/18 10:40:00 60 74 95
2: 6/19/18 10:41:20 62 63 88
3: 6/19/18 10:42:40 60 56 82
4: 6/19/18 10:44:00 66 61 90
5: 6/19/18 10:45:20 60 53 80
6: 6/19/18 10:46:40 57 40 70
7: 6/19/18 10:48:00 54 41 68
8: 6/19/18 10:49:20 52 49 71
9: 6/19/18 10:50:40 61 49 78
10: 6/19/18 10:52:00 93 32 98
11: 6/19/18 10:53:20 80 54 97
12: 6/19/18 10:54:40 73 39 83
13: 6/19/18 10:56:00 47 37 60
14: 6/19/18 10:57:20 51 55 75
15: 6/19/18 10:58:40 51 60 79
16: 6/19/18 11:00:00 14 13 19
17: 6/19/18 11:01:20 0 0 0
18: 6/19/18 11:02:40 13 3 13
19: 6/19/18 11:04:00 20 10 22
20: 6/19/18 11:05:20 13 6 14
Ниже приведен пример того, как я хотел бы преобразовать мои данные:
> print(sampleoutput)
Time ACTIVITY_X ACTIVITY_Y ACTIVITY_Z
1: 6/19/18 10:40:00 0 0 0
2: 6/19/18 10:44:00 188 180 260
3: 6/19/18 10:48:00 171 134 218
4: 6/19/18 10:52:00 206 130 247
5: 6/19/18 10:56:00 200 130 240
6: 6/19/18 11:00:00 116 128 173
7: 6/19/18 11:04:00 33 13 35
Как видно из столбца Time
, измерения даты и времени выполняются каждые 80 секунд со связанными значениями для столбцов ACTIVITY_X
, ACTIITY_Y
и ACTIVITY_Z
.
Я хотел бы преобразовать свой набор данных таким образом, чтобы вместо измерения даты и времени каждые 80 секунд я получал их каждые 240 секунд (4 минуты).
Что касается значений в столбцах ACTIVITY_X
, ACTIITY_Y
и ACTIVITY_Z
, это будет означать суммирование их через каждые три строки в одну строку. Обратите внимание, что для каждого времени связанные с ним ACTIVITY_X
, ACTIITY_Y
и ACTIVITY_Z
меры рассчитываются из интервала, соответствующего: [предыдущее время + 1 секунда к фактическому времени].
Пример: для второй строки со временем 6/19/18 10:41:20
значения для ACTIVITY_X
, ACTIITY_Y
и ACTIVITY_Z
соответствуют интервалу выборки от [6/19/18 10:40:01 до 6/19/18 10:41:20].
Первая строка выходной таблицы будет иметь 0 для значений ACTIVITY_X
, ACTIITY_Y
и ACTIVITY_Z
, поскольку я пропускаю значения из двух предыдущих интервалов времени, но это не проблема.
Я довольно новичок в R, и хотя мне удалось преобразовать свои данные в Excel, я бы хотел автоматизировать этот процесс, который кажется довольно сложным.
Надеюсь, что это интересный вопрос, и любые отзывы приветствуются!
PS: я не могу использовать dput из-за слишком большого набора данных, но я загрузил его здесь