计算R中每个国家/地区的年数最简单的方法是什么?请参阅下面的示例。 1)如何创建"#years"变量?实际数据中的观察期是从1990年到2010年,年数是按升序排序的。
2)此外,是否可以从" 0"开始,而不是" 1"?
country year #years
A 2000 1
A 2001 2
A 2002 3
B 2000 1
B 2001 2
B 2002 3
答案 0 :(得分:2)
以下是来自ave
base R
的一个选项
years <- with(df1, ave(year, country, FUN=seq_along))
如果我们需要从0开始
years <- years -1
df1$years <- years
使用data.table
library(data.table)
setDT(df1)[, years := seq_len(.N), country]