У меня очень большой фрейм данных, подобный следующему:
Region year prate
1 2005 24
1 2006 17
1 2007 56
2 2005 13
2 2006 65
2 2007 43
3 2005 91
3 2006 65
3 2007 12
.....
Я хочу создать новую переменную с именем prate07, в которой переменная для 2007 года - это значение prate в этом году, а для других лет - 0. Что-то вроде следующего:
Region year prate prate07
1 2005 24 0
1 2006 17 0
1 2007 56 56
2 2005 13 0
2 2006 65 0
2 2007 43 43
3 2005 91 0
3 2006 65 0
3 2007 12 12
.....
Может кто-нибудь помочь мне найти код для него?
Заранее спасибо за помощь
Я использовал следующий код, но он не работает:
library(tidyverse)
dat2 <- dat %>%
mutate(group2 = str_c("p_rate", year), prate07 = prate) %>%
spread(group2, prate07, fill = 0)