У меня есть две таблицы данных, как показано ниже:
library(data.table)
x <- data.table(id = c(1,1,1,2,2,2,3,3,3,4,4,4), date = as.Date(c("2015-5-26","2015-6-15","2015-4-03","2015-5-26","2015-6-15","2015-4-03","2015-5-26","2015-6-15","2015-4-03","2015-5-26","2015-6-15","2015-4-03")))
y <- data.table(id=c(1,2,3,4),new_id=c(10,20,30,40))
Как уже упоминалось, я хочу добавить столбец new_id в таблицу данных x, а затем удалить идентификатор столбца.
Я могу сделать это
merge(x,y,by="id")
Но я хотел попробовать лакомство.
Итак, я попытался
x[,new_id:=0]
nm <- c("new_id")
x[nm] <- lapply(nm, function(z) y[[z]][match(y$id, x$id)])
Также, какой метод будет хорош, если у меня широкие столбцы и больше строк.
Это не соответствует столбцу, как кажется.
Также, какой метод будет эффективен, если у меня широкие столбцы и больше строк.
Любая помощь приветствуется.