У меня есть фрейм данных с такими записями, как;
V1 zipcode year V2
1 11747 2012 5
2 11747 2012 10
3 11747 2012 20
4 11747 2012 15
1 11000 2012 20
2 11000 2012 15
3 11000 2012 20
Я хочу найти разницу в V2 для максимального значения V1 для каждой комбинации года по почтовому индексу.В этом случае 15-5 и 20-20.
Я бы хотел, чтобы результат выглядел следующим образом:
V1 zipcode year V2 V3
1 11747 2012 5 10
2 11747 2012 10 10
3 11747 2012 20 10
4 11747 2012 15 10
1 11000 2012 20 0
2 11000 2012 15 0
3 11000 2012 20 0
Итак, я пытался использовать group byи мутировать со следующими условиями: df %>% group_by(year, zipcode) %>% mutate(difV2 = df[df$V1== max(df$V1),4] - df[df$V1== min(df$V1),4])
Любые советы будут с благодарностью!