Pyspark-通过忽略空值计算分组后的最小值

时间:2018-09-12 08:03:55

标签: pyspark pyspark-sql

我想对数据集进行分组,并为每个组计算变量的最小值,而忽略空值。例如:

NAME   | COUNTRY | AGE
Marc   | France  | 20
Anne   | France  | null
Claire | France  | 18
Harry  | USA     | 20
David  | USA     | null
George | USA     | 28

如果我计算

    from pyspark.sql import functions as F
    min_values = data.groupBy("COUNTRY").agg(F.min("AGE").alias("MIN_AGE"))

我获得

   COUNTRY | MIN_AGE
   France    null
   USA       null

代替

   COUNTRY | MIN_AGE
   France    18
   USA       20

您知道如何解决它吗?非常感谢你!

1 个答案:

答案 0 :(得分:1)

您可以删除na值:

min_values = data.na.drop().groupBy("COUNTRY").agg(F.min("AGE").alias("MIN_AGE"))