Недавно я задал вопрос об управлении базой данных в пакетах R tidyr, dplyr или подобных по этой ссылке (Реорганизация столбцов с помощью комбинации двух столбцов).
Это было полезно, мне удалось сделать предложенный код, но я выжимал окончательный формат, который мне требовался.
Мне не удается достичь этого формата, и мне было интересно, как это можно легко сделать.
Учитывая это в качестве примера базы данных:
Factor 1 Factor 2 Year value1 value2
A green 2016 1.9 20
A green 2015 1.9 20
A green 2015 4 30
B yellow 2015 3 10
B yellow 2016 8 11
И пытаясь получить:
Factor 1 Factor 2 value1.2015 value1.2016 value2.2015 value2.2016
A green 5.9 1.9 50 20
B yellow 3 8 10 11
Таким образом, можно было бы установить общие идентификаторы для Фактора 1 и Фактора 2, чтобы распределить набор данных по годам и суммировать общие годы для значений 1 и 2.
Я новичок в tidyr, dplyr и не могу легко это сделать.
Я смог распространить набор данных по годам:
df.spread<-df %>%
gather(value1,value2,-factor1,-factor2,-Year) %>%
unite(Year,Year, value1, sep = "") %>%
spread(Year,value2)
но это не суммирует значение1 для обычных лет, как я этого хочу.