gpt4 book ai didi

scala - Spark : count percentage percentages of a column values

转载 作者:行者123 更新时间:2023-12-03 00:35:31 24 4
gpt4 key购买 nike

我正在努力提高我的 Spark Scala 技能,但我遇到了这个案例,我找不到操作方法,所以请指教!

我有原始数据,如下图所示:

enter image description here

我想计算计数列每个结果的百分比。例如。最后一个错误值为 64,64 在所有列值中所占的百分比是多少。请注意,我正在使用 sqlContext 将原始数据读取为 Dataframes:这是我的代码:

    val df1 = df.groupBy(" Code")
.agg(sum("count").alias("sum"), mean("count")
.multiply(100)
.cast("integer").alias("percentag‌​e"))

我想要与此类似的结果:

enter image description here

提前致谢!

最佳答案

使用agg和窗口函数:

import org.apache.spark.sql.expressions._
import org.apache.spark.sql.functions._

df
.groupBy("code")
.agg(sum("count").alias("count"))
.withColumn("fraction", col("count") / sum("count").over())

关于scala - Spark : count percentage percentages of a column values,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46863360/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com