|
发表于 2023-9-25 23:45:19
|
显示全部楼层
你可以使用 merge 函数,将两个表按照特定的条件合并。具体来说,你需要将左表的库存数量与右表的增减数相加,得到当天的实际库存数量。以下是代码示例:
- import pandas as pd
- # 创建左表
- df1 = pd.DataFrame({'产品编号': ['A', 'B', 'C'], '期初库存数量': [100, 200, 300]})
- # 创建右表
- df2 = pd.DataFrame({'日期': ['2021-01-01', '2021-01-01', '2021-01-02', '2021-01-02'],
- '产品编号': ['A', 'B', 'B', 'C'], '增减数量': [10, -20, 30, -50]})
- # 合并两个表
- df_merge = pd.merge(df2, df1, on='产品编号', how='left')
- # 计算实际库存数量
- df_merge['实际库存数量'] = df_merge['期初库存数量'] + df_merge['增减数量']
- # 删除不需要的列
- df_merge.drop('期初库存数量', axis=1, inplace=True)
- print(df_merge)
复制代码
输出结果为:
- 日期 产品编号 增减数量 实际库存数量
- 0 2021-01-01 A 10 110
- 1 2021-01-01 B -20 180
- 2 2021-01-02 B 30 230
- 3 2021-01-02 C -50 250
复制代码
在上述代码中,我们首先创建了左表和右表,然后使用 merge 函数将它们按照产品编号合并。我们选择 left 方式合并,这意味着我们将保留左表中所有的行,而右表中没有匹配到的行将被填充为 NaN 。接下来,我们计算了实际库存数量,并删除了不需要的列。最后,我们输出了合并后的表格。 |
|