У меня есть фрейм данных, для которого у меня есть данные даты и кумулятивный счет. Я пытаюсь сделать перестановку cumsum , чтобы получить ежедневные подсчеты , но также получает подсчеты по группам. Я пытаюсь go из кадра данных A в кадр данных B. Я использую R и tidyr
.
Вот код:
df <- data.frame(cum_count = c(5, 14, 50, 5, 14, 50),
state = c("Alabama", "Alabama", "Alabama", "NY", "NY", "NY"),
Year = c(2012:2014, 2012:2014))
Dataframe A
cum_count state Year
1 5 Alabama 2012
2 14 Alabama 2013
3 50 Alabama 2014
4 5 NY 2012
5 14 NY 2013
6 50 NY 2014
Dataframe B
cum_count state Year
1 5 Alabama 2012
2 9 Alabama 2013
3 36 Alabama 2014
4 5 NY 2012
5 9 NY 2013
6 36 NY 2014
I пытался использовать функцию сравнения:
df <- df %>%group_by(state)%>%
mutate(daily_count = diff(cum_count))
Но я получаю
Ошибка: столбец daily_count
должен быть длиной 3 (количество строк) или один, а не 2
Дайте мне знать, что вы думаете.
Спасибо!