2017-06-27 90 views
0

我有三組具有不同列的數據表。 locationNames.xxx變量具有包含公共列的數據集名稱。r使用數據表名稱列表合併多個數據表

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列。我想將它們全部合併到date上的一個combined文件中。

我知道以下方法來合併多個數據集,其中列表具有數據表名稱,不帶引號。

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變量的第一個數據表中的列的數據表。 我懷疑有什麼明顯的我失蹤了。

+0

你可以嘗試'combined.sites < - Reduce(merge,lapply(allSites,get))''。 –

回答

2

我認爲這應該工作:

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

讓我知道,如果它沒有。

+0

它的確如此,但是...我也希望能夠使用all = TRUE。以下不起作用。 combined.sites.test < - Reduce(merge,lapply(allSites,get),all = TRUE) – JerryN

+1

@JerryN這裏有一個解決方案將多個參數傳遞給Reduce函數https://stackoverflow.com/questions/34954811/using-reduce -to-合併多數據幀與 - 通過 - 參數 - 和 - 不德 –