Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala Apache Spark窗口函数,按大小筛选_Scala_Apache Spark_Apache Spark Sql_Apache Spark Dataset - Fatal编程技术网

Scala Apache Spark窗口函数,按大小筛选

Scala Apache Spark窗口函数,按大小筛选,scala,apache-spark,apache-spark-sql,apache-spark-dataset,Scala,Apache Spark,Apache Spark Sql,Apache Spark Dataset,我试图使用窗口函数计算窗口内的平均值,但在计算前不包括0 val byClass = Window.partitionBy('class) val avgAge = avg('age).over(byClass) 我尝试像这样过滤大小,但没有运气 val avgAge = avg('age).ge(lit(0)).over(byClusterHash) 最后, val results = reports.select('*, avgAge as 'avg).show(2000) 你

我试图使用窗口函数计算窗口内的平均值,但在计算前不包括0

val byClass = Window.partitionBy('class)    
val avgAge = avg('age).over(byClass)
我尝试像这样过滤大小,但没有运气

val avgAge = avg('age).ge(lit(0)).over(byClusterHash)
最后,

val results = reports.select('*, avgAge as 'avg).show(2000)

你知道如何解决这个问题吗?

你能展示示例数据和预期输出吗?@mtoto将计算出的平均值添加到结果中,因此,不是将年龄平均值计算为(5+4+0)/
3
,而是将其计算为(5+4)/
2
,这很好,但你的代码仍然不可复制。@mtoto:没有什么可复制的,这只是spark中的一个基本窗口函数,只需要知道如何在组中应用筛选器以排除某些行。如果没有要复制的内容,也没有什么要回答的。您能显示示例数据和预期输出吗?@mtoto将计算出的平均值添加到结果中,因此,不要将年龄的平均值计算为(5+4+0)/
3
,计算为(5+4)/
2
,这很好,但您的代码仍然不可复制。@mtoto:没有什么可复制的,它只是spark中的一个基本窗口函数,只需要知道如何在组内应用筛选器以排除某些行。如果没有可复制的,也没有什么可回答的。