【发布时间】:2021-06-07 19:02:01
【问题描述】:
我需要找到数组中特定元素的出现次数,我们可以使用array_contains 函数,但我正在寻找另一种可以在 spark 2.2 下工作的解决方案
输入:
+----+------------------+
|col1| array_col2|
+----+------------------+
| x| [1, 2, 3, 7, 7]|
| z|[3, 2, 8, 9, 4, 9]|
| a| [4, 5, 2, 8]|
+----+------------------+
result1 -> 在给定数组列array_col2 中出现1,2 的计数
result2 -> 在给定数组列array_col2 中出现3,7,9 的计数
预期输出:
+----+------------------+----------+----------+
|col1| array_col2| result1| result2|
+----+------------------+----------+----------+
| x| [1, 2, 3, 7, 7]| 2| 3|
| z|[3, 2, 8, 9, 4, 9]| 1| 3|
| a| [4, 5, 2, 8]| 1| 0|
+----+------------------+----------+----------+
【问题讨论】:
标签: scala apache-spark pyspark apache-spark-sql