Добавление FILTER в функцию AVERAGEX выдает ошибку Power BI - PullRequest
0 голосов
/ 21 июня 2019

У меня есть ниже меры:

AVG Closed Claims =
AVERAGEX (
    SUMMARIZE (
        fact_Loss,
        fact_Loss[ClosedMMYY],
        "Average", COUNT ( fact_Loss[ClaimID] )
    ),
    [Average]
)

Мне просто нужно добавить оператор фильтра для исключения значений, когда ClosedMMYY равно blank

Итак, я пытаюсь что-то вроде этого:

AVG Closed Claims =
CALCULATE (
    AVERAGEX (
        SUMMARIZE (
            FILTER ( fact_Loss, fact_Loss[ClosedMMYY] <> BLANK () ),
            fact_Loss,
            fact_Loss[ClosedMMYY],
            "Average", COUNT ( fact_Loss[ClaimID] )
        ),
        [Average]
    )
)

Но это дает мне ошибку.

Где мне разместить это FILTER?

1 Ответ

2 голосов
/ 21 июня 2019

Теперь у вас есть две таблицы в SUMMARIZE.Просто использовал отфильтрованный.

AVG Closed Claims =
CALCULATE (
    AVERAGEX (
        SUMMARIZE (
            FILTER ( fact_Loss, fact_Loss[ClosedMMYY] <> BLANK () ),
            -- Remove this one => fact_Loss,
            fact_Loss[ClosedMMYY],
            "Average", COUNT ( fact_Loss[ClaimID] )
        ),
        [Average]
    )
)

В приведенном выше, вам не нужно CALCULATE.Если вы используете CALCULATE, то напишите это так:

AVG Closed Claims =
CALCULATE (
    AVERAGEX (
        SUMMARIZE (
            fact_Loss,
            fact_Loss[ClosedMMYY],
            "Average", COUNT ( fact_Loss[ClaimID] )
        ),
        [Average]
    ),
    fact_Loss[ClosedMMYY] <> BLANK ()
)

В противном случае это:

AVG Closed Claims =
AVERAGEX (
    SUMMARIZE (
        FILTER ( fact_Loss, fact_Loss[ClosedMMYY] <> BLANK () ),
        fact_Loss[ClosedMMYY],
        "Average", COUNT ( fact_Loss[ClaimID] )
    ),
    [Average]
)

Обратите внимание, что они не совсем эквивалентны, так как CALCULATE логический фильтр заменяет этот контекст фильтра столбцов, а не просто добавляет другое условие.

...