我有一个包含三个标识符的大型数据框。例如:
df <- data.frame(year=c(1999,1999,2000,2000,2000), country=c('K','K','M','M','S'),
site=c('di','se','di','di','di'))
这将产生这样的数据帧:
year country site
1999 K di
1999 K se
2000 M di
2000 M di
2000 S di
我想向数据框中添加一个附加列,并使用“年份”、“国家/地区”和“站点”的条目分配一个“唯一 ID”。它看起来像这样:
year country site unique_id
1999 K di 1
1999 K se 2
2000 M di 3
2000 M di 3
2000 S di 4
任何关于如何做到这一点的建议将不胜感激。我认为可以使用 以某种方式完成胶合板包裹?
最佳答案
这应该很好用。 (它利用了一个因素的唯一级别实际上存储为整数的事实,并使用 as.numeric()
访问/提取这些整数值)。
df$unique_id <-
as.numeric(as.factor(with(df, paste(year, country, site, sep="_"))))
df
# year country site unique_id
# 1 1999 K di 1
# 2 1999 K se 2
# 3 2000 M di 3
# 4 2000 M di 3
# 5 2000 S di 4
关于r - 如何为多个数据框条目分配唯一标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10118856/