【发布时间】:2019-01-31 02:37:20
【问题描述】:
我有两个数据框,DF1 和 DF2。 DF1 是主控,DF2 是增量。 DF2 中的数据应该插入到 DF1 中或用于更新 DF1 数据。
假设 DF1 的格式如下:
| id_no | start_date | amount | days |
|---|---|---|---|
| 1 | 2016-01-01 | 4650 | 22 |
| 2 | 2016-01-02 | 3130 | 45 |
| 1 | 2016-01-03 | 4456 | 22 |
| 2 | 2016-01-15 | 1234 | 45 |
DF2 包含以下内容:
| id_no | start_date | amount | days |
|---|---|---|---|
| 1 | 2016-01-01 | 8650 | 52 |
| 2 | 2016-01-02 | 7130 | 65 |
| 1 | 2016-01-06 | 3456 | 20 |
| 2 | 2016-01-20 | 2345 | 19 |
| 3 | 2016-02-02 | 1345 | 19 |
我需要组合这两个数据帧,如果 DF2 的“id_no”和“开始日期”与 DF1 匹配,则应在 DF1 中替换它,如果不匹配,则应将其插入 DF1。 “id_no”不是唯一的。
预期结果:
| id_no | start_date | amount | days |
|---|---|---|---|
| 1 | 2016-01-01 | 8650 | 52 |
| 2 | 2016-01-02 | 7130 | 65 |
| 1 | 2016-01-03 | 4456 | 22 |
| 2 | 2016-01-15 | 1234 | 45 |
| 1 | 2016-01-06 | 3456 | 20 |
| 2 | 2016-01-20 | 2345 | 19 |
| 3 | 2016-02-02 | 1345 | 19 |
【问题讨论】:
标签: python pyspark apache-spark-sql pyspark-dataframes upsert