[英]Join several dataframes together into one in R
在 R 工作。 我有 9 個數據框,它們都共享一個我想加入的公共 ID。 通常我會使用只有 2 個 dfs 的 inner_join,但使用 9 會稍微復雜一些(而且我不擅長 R)。 有什么建議么?
我們可以把它放到一個list
,然后使用inner_join
和reduce
library(dplyr)
library(purrr)
lst1 <- list(df1, df2, df3, ...., dfn)
如果 object 名稱具有模式,即df
后跟一些數字,則可以更輕松地將其轉換為list
lst1 <- mget(ls(pattern = '^df\\d+$'))
reduce(lst1, inner_join, by = 'ID')
在base R
中,這可以通過merge
和Reduce
來完成
Reduce(function(...) merge(..., by = 'ID'), lst1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.