Я пытаюсь объединить наблюдения (строки) на основе нескольких дат. В моем исследовании я выбрал новобранцев на каждой стороне модуля в определенные даты. Однако в нескольких случаях мне приходилось возвращаться к определенным сторонам модуля, чтобы завершить свои переписи в другую дату. Что я хочу сделать для этих случаев, так это сложить вместе количество новобранцев и указать дату последнего наблюдения.
Я пытался использовать спред (n2, ключ = дата, значение = рекруты), но это не помогло получить данные из 2 строк в 1.
База данных:
n3 <- structure(list(`Module #` = c(114L, 114L, 114L, 114L, 114L, 114L,
114L, 114L, 114L, 114L, 114L, 114L, 114L, 114L, 114L, 114L, 114L,
114L), Side = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L,
2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L), .Label = c("N", "S", "T"
), class = "factor"), TimeStep = c(1L, 4L, 4L, 5L, 6L, 7L, 1L,
4L, 4L, 5L, 6L, 7L, 1L, 4L, 4L, 5L, 6L, 7L), Date = structure(c(NA,
17389, 17398, 17482, 17601, NA, 17299, 17389, 17404, NA, 17601,
17682, 17299, 17389, 17404, NA, 17601, NA), class = "Date"),
Site = structure(c(NA, 2L, 2L, 2L, 2L, NA, 2L, 2L, 2L, NA,
2L, 2L, 2L, 2L, 2L, NA, 2L, NA), .Label = c("HAN", "WAI"), class = "factor"),
Treatment = c(NA, "CLO", "CLO", "CLO", "CLO", NA, "CLO",
"CLO", "CLO", NA, "CLO", "CLO", "CLO", "CLO", "CLO", NA,
"CLO", NA), recruits = c(0, 5, 1, 2, 1, 0, 1, 4, 1, 0, 2,
4, 2, 1, 1, 0, 1, 0), Site_long = structure(c(2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L
), .Label = c("Hanauma Bay", "Waikiki"), class = "factor"),
Shelter = structure(c(2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L,
2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("High", "Low"
), class = "factor")), row.names = c(NA, -18L), class = c("tbl_df",
"tbl", "data.frame"))
print(n3)
Как упомянуто выше, я хочу объединить наблюдения для сторон модуля, где наблюдения происходили в две отдельные даты, путем суммирования числа призывников для обоих наблюдений и назначения даты для объединенной строки данных датой последнего наблюдения. Спасибо за ваш вклад!