我通过加入使用以下代码创建的UNIQUE_ID创建了Spark数据框:
ddf_A.join(ddf_B, ddf_A.UNIQUE_ID_A == ddf_B.UNIQUE_ID_B, how = 'inner').limit(5).toPandas()
使用以下代码在初始数据框中创建UNIQUE_ID (dtype = 'int')
:
row_number().over(Window.orderBy(lit(1))
通过使用带有两个附加表的内部联接,ddf_A和ddf_B都是从初始数据框创建的子集。通过分别使用UNIQUE_ID_A和UNIQUE_ID_B的别名,在两个数据帧中重命名了UNIQUE_ID。
ddf_A和ddf_B之间内连接的结果(5行)如下所示:
|----|------------------|-------------------|
| | UNIQUE_ID_A | UNIQUE_ID_B |
|----|------------------|-------------------|
| 0 | 451123 | 451123 |
| 1 | 451149 | 451149 |
| 2 | 451159 | 451159 |
| 3 | 451345 | 451345 |
| 4 | 451487 | 451487 |
|----|------------------|-------------------|
这对我来说一见钟情。但是,我无法使用以下代码在ddf_A中找到451123:
ddf_A.filter(col('UNIQUE_ID_A') == 451123).show()
你知道这里有什么问题吗?