添加新列并指定值

时间:2015-07-27 18:36:23

标签: r

我有一个数据框df1,以便:

group=c(0,5,3,0,5,3)
year=c("2001","2002","2003", "2010", "2012", "2013")
items=c(12, 10, 15, 5, 10, 7)
df1=data.frame(group, year, items)

我想创建一个新列,我将一个值分配给一年,而将其余值保留为0.例如,我希望它看起来像这样:

  group year items new  
1     0 2001    12   1
2     5 2002    10   0  
3     3 2003    15   0
4     0 2010     5   0
5     5 2012    10   0
6     3 2013     7   0

谢谢!

2 个答案:

答案 0 :(得分:4)

在没有其他要求的情况下,我会使用:

df1$new <- ifelse(year == 2001, 1, 0)

答案 1 :(得分:4)

只做

 df1$new <- +(df1$year==2001)