Tengo un marco de datos grande que tiene tres identificadores. Por ejemplo:cómo asignar un identificador único a múltiples entradas de marcos de datos
df <- data.frame(year=c(1999,1999,2000,2000,2000), country=c('K','K','M','M','S'),
site=c('di','se','di','di','di'))
que producirá una trama de datos de esta manera:
year country site
1999 K di
1999 K se
2000 M di
2000 M di
2000 S di
Quiero añadir una columna adicional a la trama de datos y tienen un 'identificador único' asignado por el uso de las entradas para 'año', 'país' y 'sitio'. Se vería algo como esto:
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
¿Alguna sugerencia sobre cómo hacer esto sería muy apreciado. Estoy pensando que de alguna manera podría hacerse utilizando el paquete plyr?
gracias, ambas de estas respuestas ha funcionado bien. muy apreciado. – Austin
tal vez 'transform (df, unique_id = as.integer (interaction (year, country, site, drop = TRUE))) 'en su lugar – baptiste
@baptiste - Sweet. Eso es mucho más agradable, y me alegra aprender sobre el argumento 'drop = TRUE' para' interaction() '. –