【发布时间】:2021-12-04 18:42:24
【问题描述】:
我有 2 个具有 2 个不同名称的数据集。
第一个数据框“X_order”有 400 行,4 列:订单号、SKU 号、订单数量、SKU 重量。该数据框是一周内发生的订单列表。
第二个数据框“X_SKU_weight”有 2 列:SKU 编号、SKU 重量。这有大约 66 行。这是 SKU 相对于其 SKU 编号的权重数据。
我需要用第二个数据帧的相应权重填充第一个数据帧的 SKU 权重列。请注意,第一个数据帧有时会重复相同的 SKU,因为多个订单可能订购了相同的 SKU。我尝试了不同的方法,例如 fillna() ,但无法针对确切的重量进行操作。请指导。
【问题讨论】:
-
我试过这个但不成功。 X_order['SKU_weight'].update(X_SKU_Weight['Weight'])
-
好的,我刚刚做了下面的代码并得到了答案。但是在结果之后,我不得不删除一个名为 SKU weight 的列,因为已经添加了一个带有权重和对应值的新列。见下文
-
d = X_order.set_index('SKU').combine_first(X_SKU_Weight.set_index('SKU')).reset_index() d
-
请分享其他更简单的解决方案