Вот df, который я использую:
Date Country City Specie count min max median variance
27 2020-03-25 IN Delhi pm25 797 6 192 92 12116.60
159 2020-03-25 IN Chennai pm25 96 27 89 57 1928.38
223 2020-03-25 IN Mumbai pm25 285 12 163 90 6275.41
412 2020-03-25 IN Bengaluru pm25 179 25 145 73 4890.82
419 2020-03-25 IN Kolkata pm25 260 6 168 129 10637.10
10 2020-04-10 IN Delhi pm25 835 2 393 137 24542.30
132 2020-04-10 IN Chennai pm25 87 5 642 53 87856.50
298 2020-04-10 IN Mumbai pm25 168 1 125 90 5025.35
358 2020-04-10 IN Bengaluru pm25 159 21 834 56 57091.10
444 2020-04-10 IN Kolkata pm25 219 4 109 64 2176.61
Я хочу рассчитать процентное изменение между «медианными» значениями фрейма данных. Для этого я использовал следующий код:
pct_change_pm25 <- day %>%
arrange(City, .by_group = TRUE) %>%
mutate(pct_change = -diff(median) / median[-1] * 100)
Но я получаю эту ошибку:
Error in arrange_impl(.data, dots) :
incorrect size (1) at position 2, expecting : 10
Количество строк, создаваемых mutate, равно 9 и не совпадает с количество строк в df. Я следовал за этим постом на stackoverflow: Рассчитать процентное изменение в R, используя dplyr
Но, к сожалению, id не работал для меня.