如何在R中以其他变量为条件创建一个变量

时间:2019-01-24 14:19:15

标签: variables if-statement conditional

我有一个非常大的数据框,如下所示:

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)

0 个答案:

没有答案