gpt4 book ai didi

R数据合并而不复制

转载 作者:行者123 更新时间:2023-12-04 03:05:34 25 4
gpt4 key购买 nike

在 data.table 中,可以直接在当前数据表(比如 DT)上工作而无需创建它的副本。例如,这可以在创建新列时完成。

DT[,new_col:=1]

我想知道如何进行合并,尤其是左连接。例如left join的数据表方式为

DT_right[DT_left,on="id"]

但是,这并没有修改原来的DT_left表,需要我重新赋值。即

DT_left = DT_right[DT_left,on="id"]

有没有办法让我在不重新分配的情况下做到这一点?即直接在 DT_left 上工作。

最佳答案

假设您有 DT_right 作为

     id right_value
1: 1 2
2: 2 4
3: 3 6
4: 4 8

DT_left as

    id left_value
1: 1 3
2: 2 6
3: 3 9
4: 4 12

如果你想在 DT_right 上执行 DT_left 的左连接,那么 i.value 将是 i.left_value 即要从 DT_left 连接到 DT_right 的列的列名。

DT_right[DT_left, joined_from_left := i.left_value, on = "id"]
DT_right[]
id right_value joined_from_left
1: 1 2 3
2: 2 4 6
3: 3 6 9
4: 4 8 12

关于R数据合并而不复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44870482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com