Let's say this is my dataset:
city | date | cases
--------|-------|-------
London | Day 1 | 4
London | Day 2 | 6
London | Day 3 | 9
Paris | Day 1 | 5
Paris | Day 2 | 3
Paris | Day 3 | 7
Madrid | Day 1 | 2
Madrid | Day 2 | 8
Madrid | Day 3 | 4
What code in R programming language can I use to get from the table above to the table below? I'm pretty sure this can be done using cumsum() but what exactly do I write? Also, is there any alternative functions I can use?
city | date | cases | cumulative cases (by city)
----------|-------|--------|------------------------
London | Day 1 | 4 | 4
London | Day 2 | 6 | 10
London | Day 3 | 9 | 19
Paris | Day 1 | 5 | 5
Paris | Day 2 | 3 | 8
Paris | Day 3 | 7 | 15
Madrid | Day 1 | 3 | 3
Madrid | Day 2 | 8 | 11
Madrid | Day 3 | 5 | 16
Furthermore, how can I create a cumulative column for cases arranged by date, as shown below?
city | date | cases | cumulative cases (by date)
----------|-------|--------|------------------------
London | Day 1 | 4 | 4
Paris | Day 1 | 5 | 9
Madrid | Day 1 | 3 | 12 *
London | Day 2 | 6 | 6
Paris | Day 2 | 3 | 9
Madrid | Day 2 | 8 | 17 *
London | Day 3 | 9 | 9
Paris | Day 3 | 7 | 16
Madrid | Day 3 | 5 | 21 *
Any help on this would be very much appreciated.