从“营销”表中计算列“余额”的中位数

时间:2017-04-05 07:38:03

标签: scala spark-dataframe median

我有一个spark(scala)数据框“Marketing”,大约有17列,其中1列为“Balance”。此列的数据类型为Int。我需要找到平衡中位数。我可以按升序排列,但是之后如何继续?我有一个提示,可以使用scala的百分位函数。我对这种百分位函数一无所知。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

中位数与第50百分位数相同。如果您不介意使用配置单元功能,可以执行以下操作之一:

marketingDF.selectExpr("percentile(CAST(Balance AS BIGINT), 0.5) AS median")

如果您不需要确切的数字,可以使用percentile_approx()代替。

这两个函数的文档位于here