我最近发现了data.table,我喜欢它能够修改值,因为我通常使用大小在10-15GB左右的数据集。
虽然我能够进行左/右连接并进行修改,但我无法找到一个解决方案如何使用完整(外部)连接(即获取表A中的所有值和表B中的所有值)和填充缺少NA,如dplyr :: full_join)
我找到了一个stackoverflow回答here,其中显示了如何为左/右连接执行此操作:
A <- data.table(a = 1:4, b = 12:15)
B <- data.table(c = 2:3, b = 13:14)
B[A, b.A:= i.b, on = c(c = "a")]
我知道可以使用merge(A, B, by.x = "a", by.y = "c", all = T)
作为full_join,但是我需要再次将结果分配给变量,这在我的情况下需要大量内存。我还发现了另一种有趣的方法here,但在这种情况下我还需要创建一个新变量。
任何帮助都非常感谢!