在计算Hive中的百分位数时处理Null

在计算百分位数时,在处理null时遇到一些麻烦。以下是示例数据。

enter image description here

正在使用的代码:百分位数(column_1,数组(0、0.25、0.50、0.75、1))为column_1_p

这里,在计算百分位数时,它也会考虑空值。但是我需要消除它们,而仅使用其他有效值来计算百分位数。我找不到执行此操作的任何其他功能。

数据:值的范围是从0到1000。由于数据中已经有零,所以我不能用零代替空值。

我们非常感谢您的帮助。

谢谢。

shenlong1943 回答:在计算Hive中的百分位数时处理Null

使用coalesce()

percentile(coalesce(column_1,0),array(0,0.25,0.50,0.75,1))

,或者如果您要考虑其他columns

percentile(coalesce(column_1,column_2,column_3...,1))
本文链接:https://www.f2er.com/3113066.html

大家都在问