我有三個檔案串列
filesl <- list.files(pattern = 'RP-L-.*\\.xls', full.names = TRUE)
filesr <- list.files(pattern = 'RP-R-.*\\.xls', full.names = TRUE)
filesv <- list.files(pattern = 'RP-V-.*\\.xls', full.names = TRUE)
我已經嘗試閱讀并合并其中兩個,如下所示:
data <- map2_dfr(filesl, filesr, ~ {
ldat <- readxl::read_excel(.x)
rdat <- readxl::read_excel(.y)
df <- rbind.data.frame(ldat, rdat, by = c('ID', 'GR', 'SES', 'COND'))
})
如果我想添加第三個串列filesv,我應該將什么設定為函式?我想我應該purrr在多個元素上使用啟用函式迭代的包中的一個(諸如此類pmap, imap,但我無法正確更改命令)。
任何建議
提前致謝
uj5u.com熱心網友回復:
data <- pmap_dfr(list(filesl, filesr, filesv), ~ {
ldat <- readxl::read_excel(..1)
rdat <- readxl::read_excel(..2)
vdat <- readxl::read_excel(..3)
df <- rbind.data.frame(ldat, rdat, vdat, by = c('ID', 'GR', 'SES', 'COND'))
})
pmap需要一個串列串列來迭代。然后,這個論點可以被稱為..1,..2在匿名函式等。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/358135.html
上一篇:R-合并多列中的缺失資料
下一篇:R將excel與不兼容的列相結合
