我有2个列表(长度不同)。第一列 - 数量;第二列 - 日期,金额。我需要将这两个列表组合在一起,因此对于相应的日期,第一个的数量将替换为一秒的数量。 List1一个包含所有需要的日期,list2 - 没有。这就是为什么我需要list2的相应日期的金额等级以及日期是否缺失 - 列表1的。
在我看来,像date_join这样的日期键应该会有所帮助,但我不知道如何使用r代码。
e.g。
List 1:
Date - Amount
1/09 - 0
2/09 - 0
3/09 - 0
4/09 - 0
List 2:
Date - Amount
1/09 - 300
3/09 - 50
组合(我需要:):)
Date - Amount
1/09 - 300
2/09 - 0
3/09 - 50
4/09 - 0
有人可以帮忙吗?
我试过inner_join(l1, l2)
,但结果是空的。 (可能因为我比较日期???)
答案 0 :(得分:0)
假设df1和df2长度相同且唯一日期的对应关系(或其他一些唯一匹配行的方式)对数据帧进行排序,然后将df2列分配给df1:
df1[order(df1$date,)]
df2[order(df2$date,)]
df1$amount <- df2$amount
如果您不想覆盖df1 $ amount:
df1$new_amount = df2$amount
如果您无法按日期简单地订购数据框,那么请查看软件包dplyr或data.table以了解如何进行有效的连接: