Вот пример моего фактического набора данных:
library("tidyverse")
year <- c(2015,2015,2015,2016,2016,2016,2016)
period <- c("P1","P2","P3","P1","P2","P3","P4")
value <- c(120,130,25,114,236,541,248)
dete <- as.tibble(data.frame(year = year,periode = period, value = value))
Итак, в этом наборе данных у нас есть: Год ... год, период, это как месяц (эквивалент 4 недель из 12 ) значение, некоторое значение продаж, например
Моя проблема заключается в следующем: я хочу, чтобы в выводе был столбец, который показывает мне максимальное (значение) каждого года, например:
result <- as.tibble(data.frame(period = c("P1","P2","P3","P4"), occurence = c(0,1,1,0)))
Но я также хочу добавить к этому вес, в этом случае в 2016 году было 4 периода из 12 (12 месяцев в году), а в 2015 году - только 3. Соответствующий результат будет:
result <- as.tibble(data.frame(period = c("P1","P2","P3","P4"), occurence = c(0,3/12,4/12,0)))
обычно у меня 12 периодов, но иногда за последний год у меня есть только его часть.