Я пытаюсь суммировать значения столбца кадра данных ( дисперсия ) в соответствии с группой, к которой они принадлежат ( Типы ). Поскольку существует только три « типа » (MRF, OH и SDH), должно быть 3 уникальных значения, но я получаю только 1 уникальное значение (общая сумма дисперсия ).
Фрейм данных, который я использую (dat_joined), выглядит следующим образом:
IndicatorID AreaName standardised variance Type
10401 Hartlepool 0.601 13478. MRF
13333 Middlesbrough 0.481 10000. MRF
Я запустил этот код, который, кажется, игнорирует тот факт, что я сгруппирован по типу.
dat_weighted <- dat_joined %>%
distinct(IndicatorName, AreaName, .keep_all = TRUE) %>%
group_by(Type)%>%
mutate(sum=sum(dat_joined[,4]))
В результате я получил это (упрощенный df):
IndicatorID AreaName standardised variance Type sum
10401 Hartlepool 0.601 13478. MRF 25037
13333 Middlesbrough 0.481 10000. MRF 25037
... ... ... ... ... ...
95555 Barnsley 0.601 14. HO 25037
96666 Oxford 0.481 1. HO 25037
... ... ... ... ... ...
93347 Staffordshire 0.250 71.0 SDH 25037
11401 Southend 0.310 80.1 SDH 25037
Однако я ожидаю получить разные результаты для каждой суммы, например:
IndicatorID AreaName standardised variance Type sum
10401 Hartlepool 0.601 13478. MRF 25000
13333 Middlesbrough 0.481 10000. MRF 25000
... ... ... ... ... ...
95555 Barnsley 0.601 14. HO 17.
96666 Oxford 0.481 1. HO 17.
... ... ... ... ... ...
93347 Staffordshire 0.250 71.0 SDH 20.
11401 Southend 0.310 80.1 SDH 20.
Спасибо!