>我正在使用 2 个数据帧,假设"df1"和"df2",它们是下一个:
DF1:
+--------+--------+
| Col1 | Col2 |
+--------+--------+
| 'A' | 1 |
+--------+--------+
| 'B' | 2 |
+--------+--------+
| 'C' | 3 |
+--------+--------+
DF2:
+--------+--------+
| Col1 | Col2 |
+--------+--------+
| 'A' | - |
+--------+--------+
| 'B' | - |
+--------+--------+
| 'B' | - |
+--------+--------+
我想做的是更新"df2">的"Col2"列,同时考虑到"df1"的值。我的意思是,我想根据具有"Col1"值的引用,将"df2"Col2"的值设置为"df1"Col2"的值。
生成的数据帧"df2"应为:
+--------+--------+
| Col1 | Col2 |
+--------+--------+
| 'A' | 1 |
+--------+--------+
| 'B' | 2 |
+--------+--------+
| 'B' | 2 |
+--------+--------+
如何使用 pyspark 数据帧执行此操作?
一个简单的左连接应该可以,
df2.join(df1,df1.col1==df2.col1,'left')