过滤包含Scala Spark数据帧中数组的列中的数组长度[重复]
Posted
技术标签:
【中文标题】过滤包含Scala Spark数据帧中数组的列中的数组长度[重复]【英文标题】:Filter on length of arrays in a column containing arrays in Scala Spark dataframe [duplicate] 【发布时间】:2018-09-14 20:49:30 【问题描述】:我有一个名为“mydf”的 DataFrame 架构,如下所示:
root
|--properties
| |-- arrayCol: array (nullable = true)
| | |-- element: struct (containsNull = true)
| | | |-- unimportantElem1: string (nullable = true)
| | | |-- unimportantElem2: integer (nullable = true)
我想根据数组大小(数组长度)等于“s”的“arrayCol”列过滤行,并计算这些行的数量。
【问题讨论】:
【参考方案1】:mydf filter(size($"properties.arrayCol") === 4) count
在这里,我正在过滤行以查找列 arrayCol 中具有大小为 4 的数组的所有行。
请注意,arrayCol 是嵌套的 (properties.arrayCol),因此它可能有助于使用嵌套列进行过滤的人。我在发布问题时得到了答案。
【讨论】:
以上是关于过滤包含Scala Spark数据帧中数组的列中的数组长度[重复]的主要内容,如果未能解决你的问题,请参考以下文章
如何根据 Spark Scala 中其他数据帧中的多列匹配过滤数据帧