【发布时间】:2021-01-10 00:07:37
【问题描述】:
注意:我有 20 列和数百万行。
df_a = spark.createDataFrame([('A', 'X', 1), ('B', 'Y', 2), ('G', 'W', 7)], ["val_1", "val_2", "unique_ID"])
df_a.show()
+-----+-----+---------+
|val_1|val_2|unique_ID|
+-----+-----+---------+
| A| X| 1|
| B| Y| 2|
| G| W| 7|
+-----+-----+---------+
df_b = spark.createDataFrame([('A', 'X'), ('B', 'Y'), ('G', 'W'),('B', 'Y'),('A', 'X'), ('G', 'W'), ('G', 'W')], ["val_1", "val_2"])
df_b.show()
+-----+-----+
|val_1|val_2|
+-----+-----+
| A| X|
| B| Y|
| G| W|
| B| Y|
| A| X|
| G| W|
| G| W|
+-----+-----+
#Expected result:
+-----+-----+-----+---------+
|sl.no|val_1|val_2|unique_ID|
+-----+-----+-----+---------+
| 1| A| X| 1|
| 2| B| Y| 2|
| 3| G| W| 7|
| 4| B| Y| 2|
| 5| A| X| 1|
| 6| G| W| 7|
| 7| G| W| 7|
+-----+-----+-----+---------+
我想在 spark dataframe 中创建列 unique_ID(如上结果所示),如果 val_1 和 val_2 匹配 df_b 则根据 df_a 创建一个 unqiue_ID。
【问题讨论】:
-
您希望
sl.no列的外观如何?它只是一个没有任何特定顺序的索引吗?
标签: apache-spark pyspark apache-spark-sql pyspark-dataframes