KQL中偶数个值的中位数计算:结果不符预期如何解决?
KQL计算偶数个元素的中位数(取中间两数平均值)
你遇到的问题是因为KQL内置的percentile()函数采用离散百分位数计算逻辑,当数据量为偶数时,会返回排序后最接近50%分位的单个值,而非中间两个数的平均值。
要实现你期望的结果,直接使用percentile_cont()函数即可,它会通过线性插值计算连续型的百分位数,正好满足偶数个元素时取中间两数平均值的需求:
datatable(number:real) [30.5,35.2,36.9,40.6] | summarize Median=toreal(percentile_cont(number, 50))
这段代码运行后会返回36.05,和你期望的结果一致。
内容的提问来源于stack exchange,提问作者PorgtheEaten
相关产品推荐
相关产品推荐

