gpt4 book ai didi

scala - 如何在 Spark 中为 DataFrame 编写基于多个值的条件

转载 作者:行者123 更新时间:2023-12-02 21:01:36 24 4
gpt4 key购买 nike

我正在开发一个 Spark 应用程序(使用 Scala),并且我有一个包含多个值的列表。我想使用此列表为我的 DataFrame 编写一个 where 子句并仅选择元组的子集。例如,我的列表包含“value1”、“value2”和“value3”。我想写这样的东西:

mydf.where($"col1" === "value1" || $"col1" === "value2" || $"col1" === "value3)

如何以编程方式执行此操作,导致列表包含许多值?

最佳答案

您可以将值列表映射到“过滤器”列表(类型为 Column),并通过应用 || 将此列表缩减为单个过滤器每两个过滤器上的运算符:

val possibleValues = Seq("value1", "value2", "value3")
val result = mydf.where(possibleValues.map($"col1" === _).reduce(_ || _))

关于scala - 如何在 Spark 中为 DataFrame 编写基于多个值的条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37927154/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com