繁体   English   中英

如何在 Pyspark 中过滤 dataframe

[英]How to filter a dataframe in Pyspark

如果给定的数据框是

A B C
1 0 0
3 0 1
4 0 8
5 0 0

我们如何过滤上述数据框,以便仅当除第一列之外的所有列都包含值 0 时。

A B C
3 0 1
4 0 8

尝试单独检查每一列并使用greatest组合布尔值:

import pyspark.sql.functions as F

df2 = df.filter(F.greatest(*[F.col(c) != 0 for c in df.columns[1:]]))

df2.show()
+---+---+---+
|  A|  B|  C|
+---+---+---+
|  3|  0|  1|
|  4|  0|  8|
+---+---+---+

暂无
暂无

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

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