Вот пример набора данных:
example = data.frame(
bucket = c(0,0,0,0,0,1,1,1,1,1),
bucket2 = c(0,1,2,3,4,0,1,2,3,4),
rate = c(0.95,0.02,0.01,0.005,0,0.9,0.05,0.02,0.01,0))
И мне нужно, чтобы сумма ставки по сегменту была равна 1. В настоящее время она не равна 1.
example %>% group_by(bucket) %>% summarise(sum(rate))
Следовательно, мне нужен способ вставить новую строку с тарифом, чтобы сумма группировок тарифов по сегменту всегда была равна 1. Для этого примера мне нужно было бы вставить 2 новые строки, как показано ниже:
new_rows = data.frame(bucket = c(0,1),
bucket2 = c('To make 0','To make 0'),
rate = c(0.015,0.02))
Реальный набор данных намного больше с большим количеством групп, но проблема все еще в том, как мне создать новую строку на основе моих условий, используя dplyr или другие пакеты? Буду признателен за любую оказанную помощь.