簡體   English   中英

在R中的`data.table`中,是否有將表組合在一起的快速方法?

[英]In `data.table` within R, is there a fast way to combine tables together?

我目前正在尋找一種將具有相同結構和列名稱的多個表組合在一起的方法。 例如,我想結合這三個表:

>dt1
user     number
A        32
A        33
A        35
A        23
A        32
A        44
A        33

>dt2
user     number
B        32
B        33
B        35
B        23
B        32
B        44
B        33

>dt3
user     number
C        32
C        33
C        35
C        23
C        32
C        44
C        33

並得到:

>dt_combined
user     number
A        32
A        33
A        35
A        23
A        32
A        44
A        33
B        32
B        33
B        35
B        23
B        32
B        44
B        33
C        32
C        33
C        35
C        23
C        32
C        44
C        33

我一直在嘗試使用聯接或合並,但是就這個問題而言,它是如此的簡單,我似乎無法在data.table中找到快速簡便的解決方案。 有人有什么建議嗎? 謝謝!

您已將其標記為data.table ,它具有便捷的rbindlist函數。

您可以將其與mget結合使用,如下所示:

library(data.table)
rbindlist(mget(ls(pattern = "dt\\d")))

mget步驟在您的工作空間中創建一個對象list ,這些對象與諸如dt1dt2等命名模式( dt +“ digits”)相匹配。 rbindlist將該列表放入一個大data.table


> print(rbindlist(mget(ls(pattern = "dt\\d"))), topn = 3)
    user number
 1:    A     32
 2:    A     33
 3:    A     35
---            
19:    C     32
20:    C     44
21:    C     33

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM