繁体   English   中英

如何在 pyspark dataframe 过滤器中给出多个条件?

[英]How to give multiple conditions in pyspark dataframe filter?

我必须在 pyspark dataframe 上使用 OR 应用具有多个条件的过滤器。

我正在尝试创建一个单独的 dataframe。日期值必须小于 max_date 或日期必须为无。

怎么做?

我尝试了以下 3 个选项,但都失败了。

df.filter(df['Date'] < max_date or df['Date'] == None).createOrReplaceTempView("Final_dataset")

final_df = df.filter(df['Date'] != max_date | df['Date'] is None)

final_df = df.filter(df['Date'] != max_date or df['Date'] is None)
final_df = df.filter((df.Date < max_date) | (df.Date.isNull()))

常规逻辑 python 运算符在 Pyspark 条件下不起作用; 您需要使用按位运算符。 它们也可能有点棘手,因此您可能需要额外的括号来消除表达式的歧义。

在这里看看: Boolean 运算符与按位运算符

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM