Pyspark合并基于值是否在列表中

时间:2018-04-26 08:10:29

标签: apache-spark pyspark apache-spark-sql

我有两个Spark数据帧(我使用python),比如A和B. A包含一个带字符串的列(比如" Name"),而B包含一个列表列字符串(例如" NamesList")。我想要做的是根据A.Name是否包含在B.NamesList中来合并A和B.

所以举个例子,A可能是

+---+------+
| Id|  Name|
+---+------+
|  1|George|
|  2| Sarah|
+---+------+

B可能是

+---+--------------------+
|Id2|           NamesList|
+---+--------------------+
|  6| [Bob, Alice, Sarah]|
|  7|[Thomas, Bob, Alice]|
+---+--------------------+

我希望结果是

+---+---+-----+-------------------+
| Id|Id2| Name|          NamesList|
+---+---+-----+-------------------+
|  2|  6|Sarah|[Bob, Alice, Sarah]|
+---+---+-----+-------------------+

有任何想法如何以有效的方式做到这一点?

0 个答案:

没有答案