Фиктивный набор данных:
data <- data.frame(
id = c(1,1,2,2,3,4,5,6),
value = c(10,10,20,20,10,30,40,50),
other = c(1,2,3,4,5,6,7,8)
)
Данные были выведены из group_by(id)
операции в dplyr
трубе. Каждый id
связан не более чем с одним значением, и два разных id
могут иметь одно и то же значение. Мне нужно найти совокупную сумму по идентификаторам, добавив новый столбец: cum_col = c(10,10,30,30,40,70,110,160)
cumsum
в mutate
найдет совокупную сумму по всему столбцу значений и не выберет только одно значение для каждой группы. summarise
бесполезен, поскольку есть другие столбцы, которые мне нужно сохранить.
Есть ли выход, не используя summarise
, а потом join
назад? Или, пожалуйста, укажите мне ссылку, если на нее уже ответили.
Изменить: просто для информации фактические данные имеют ~ 2 миллиона строк и 100 столбцов.
dplyr
ответ или вы открыты для других вариантов? Кроме того, в группе всегда будет только один уникальныйvalue
? - person Ronak Shah   schedule 13.11.2017dplyr
, поскольку я использую канал для выполнения пары других мутаций и операций в одном блоке кода - person Kaur   schedule 13.11.2017