Квартили для расчетов - PullRequest
0 голосов
/ 19 октября 2018

Я работаю над воссозданием анализа возможностей в визуализациях Power BI.Поскольку нет реальных возможностей статистики, я вынужден создавать с нуля.У меня возникает небольшая проблема, когда я пытаюсь получить среднее значение моего 3-го квартиля для измерения наилучшей краткосрочной производительности "BSTP".Формула для расчета BSTP:

Цель = Базовая линия (µ) + | 0,7 x (BSTP - Базовая линия (µ)) |

(µ) - это СРЕДНИЙ (), который легко проверить 0,7= дисперсия процесса снова проста и проверена

BSTP = 3-я четверть среднего / количество точек данных в 3-м квартале не так просто и нет проверки ...

Для примера расчета ...

Скажем, у нас есть 100 точек данных, равномерно распределенных от 0 до 100

  • Мин = 1
  • Q1 = 25
  • Q2 = 50
  • Q3 = 75
  • Q4 = 100

Этот процесс расчета BSTP из Excel будет следующим:

SUMIF ("значение данных"> = 75(Q3) / COUNTIF («значение данных»> = 75)

Таким образом, если «значение данных» больше или равно сумме 75, то разделите на число данных, которое больше или равно 75 ..В этом примере у нас было бы 25 значений данных между 51-75, которые равны 1575, 51 + 52 + 53 + 54 .... Было суммировано 25 точек данных, поэтому окончательный расчет будет

1575/25 = 63 (BSTP)

, чтобы подвести итог ... Это формула, которую я пытаюсь найти в силе bi

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

Я ценю ваши идеи!

1 Ответ

0 голосов
/ 19 октября 2018

У DAX есть некоторые функции статистики, так что эта довольно проста.

Если вы ищете среднее значение для 3-го квартиля, то вам нужно

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]
    )
...