代码之家  ›  专栏  ›  技术社区  ›  Desert Spider

计算用四分位数

  •  2
  • Desert Spider  · 技术社区  · 7 年前

    我正在努力在power-bi可视化中重新创建一个功能分析。由于没有真正的统计功能,我必须从头开始创建。我遇到了一个小问题,当我试图得到我的第三个四分位数的平均值为一个“BSTP”最佳短期业绩衡量。计算bstp的公式是

    目标=基线()+0.7 x(bstp-基线())|

    (μ)是易于检查的平均值() 0.7=过程的方差再次简单检查

    bstp=3rd quartile average/count of data points in 3rd quartile not so easy and no check.(第三个四分位数的平均值/第三个四分位数的数据点计数不太容易,也没有检查…)

    对于计算示例…

    以免说我们有100个数据点平均分布在0-100之间

    • 最小值=1
    • Q1=25
    • 问题2=50
    • 问题3=75
    • Q4=100

    从excel计算bstp的过程如下

    sumif(“数据值”>=75(q3)/countif(“数据值”>=75)

    因此,如果“数据值”大于或等于75和,那么除以大于或等于75的数据计数…在这个例子中,我们有25个数据值在51-75之间,等于1575,51+52+53+54….总共有25个数据点,所以最终的计算是

    1575/25=63(英国夏令时)

    总而言之…这是我要解的公式

    SUMIF("data value" >= 75 (Q3)/ COUNTIF("data value" >= 75)
    

    我很欣赏你的洞察力!

    1 回复  |  直到 7 年前
        1
  •  0
  •   Alexis Olson    7 年前

    dax确实有一些stats函数,所以这一个非常简单。

    如果你在寻找第三个四分位数的平均值,那么你想要

    SUMIF( 50 <= "data value" < 75 ) / COUNTIF( 50 <= "data value" < 75 )
    

    或者只是

    AVERAGEIF( 50 <= "data value" < 75 )
    

    您可以使用百分位数函数计算四分位数在该子集上的平均值:

    3rdQtlAvg =
    VAR Q2 = PERCENTILE.INC ( Table1[Val], 0.50 )
    VAR Q3 = PERCENTILE.EXC ( Table1[Val], 0.75 )
    RETURN
        AVERAGEX (
            FILTER ( Table1,
                Table1[Val] >= Q2 &&
                Table1[Val] <= Q3 ),
            Table1[Val]
        )