У меня есть фрейм данных df, содержащий данные о населении, сгруппированные по городу, полу, году и возрасту:
df <- data.frame(City=c("New York", "New York", "New York", "New York", "New York",
"Boston","Boston", "Boston", "Boston"),
Gender=c("m","m","m", "f","f","m","m","f","f"),
Year=c("2020","2021", "2022", "2020", "2021","2020","2021", "2020", "2021"),
Age=c("1","1","1", "2","2","1","1","2","2"),
Population=c("100", "105","110", "105", "110", "200","201", "220", "222"))
Мне нужно рассчитать для каждой строки разницу с первым значением ее группы (т.е. в 2020 году ) в результате:
df2 <- data.frame(City=c("New York", "New York", "New York", "New York", "New York", "Boston","Boston", "Boston", "Boston"),
Gender=c("m","m","m", "f","f","m","m","f","f"),
Year=c("2020","2021", "2022", "2020", "2021","2020","2021", "2020", "2021"),
Age=c("1","1","1", "2","2","1","1","2","2"),
Population=c("100", "105","110", "105", "110", "200","201", "220", "222"),
PopulationGrowth=c("0", "5","10", "0","5","0","1","0","2"))
Спасибо!