You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spark DataFrame筛选:编写where()方法参数(禁用col()函数)

嘿,我来帮你搞定这个Spark DataFrame的筛选需求!

要筛选出t中A列大于5或者B列大于5的行,而且不能用col()函数,直接用DataFrame变量来引用列就行,下面分Scala和Python两种常用场景给你代码:

Scala版本

t.where(t("A") > 5 || t("B") > 5)
// 或者用更直观的or关键字写法
t.where(t("A") > 5 or t("B") > 5)

Python版本

注意Python里运算符优先级的问题,记得给每个条件加括号:

t.where( (t["A"] > 5) | (t["B"] > 5) )

为啥这么写可行?

直接通过DataFrame变量("列名")(Scala)或者DataFrame变量["列名"](Python),就能获取到对应的Column对象,完全替代了col()的作用。然后用逻辑或运算符(Scala的||/or,Python的|)把两个条件组合起来,传入where()就完成筛选啦。

内容的提问来源于stack exchange,提问作者rupesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:25:20