r使用数据表名称列表合并多个数据表

时间:2017-06-27 17:16:43

标签: r merge data.table

我有三组具有不同列数的数据表。 locationNames.xxx变量的数据集名称带有公共列。

locationNames.complete <- c("BangsCanyon", "BookCliffs", "Escalante", "Highline", "Ute")
locationNames.noWind <- c("DougPass", "GrandMesa")
locationNames.noT <- c("Palisade", "Pitkin", "Whitewater")

一个包含所有数据集名称的变量。

allSites <- c(locationNames.complete, locationNames.noWind, locationNames.noT)

我对其中的每一个都进行了一些操作,包括格式化为POSIXct的常见date列。我想将它们全部合并到combined上的一个date文件中。

我知道以下方法合并多个数据集,其中列表具有数据表名称,没有引号。

combined.sites.1 <- Reduce(merge,list(BangsCanyon, BookCliffs, Escalante))

但是以下方法都不起作用,大概是因为locationNames变量是字符。

combined.sites.2 <- Reduce(merge,list(locationNames.complete, locationNames.noWind, locationNames.noT))
combined.sites.2 <- Reduce(merge,list(allSites))
combined.sites.2 <- Reduce(merge,list(get(allSites)))

这三个中的最后一个给出了一个数据表,该表只包含allSites变量中第一个数据表的列。 我怀疑有一些明显的东西我不知道。

1 个答案:

答案 0 :(得分:2)

我认为这应该有效:

combined.sites <- Reduce(merge,lapply(allSites,get))

如果没有,请告诉我。