Powerbi 平均TOTALYTD给出了不正确的结果。功率双DAX

Powerbi 平均TOTALYTD给出了不正确的结果。功率双DAX,powerbi,dax,powerbi-desktop,Powerbi,Dax,Powerbi Desktop,我只需要计算已结清的索赔的年迄今平均数。 如果我使用FILTER函数,那么它会给出正确的结果:$3507.74 AVG_YTD_Indemn_Closed = CALCULATE ( AVERAGE ( fact_Losses[PaidIdemnity] ), FILTER ( fact_Losses, fact_Losses[DateEntered].[Year] = YEAR ( TODAY () ) &&

我只需要计算
已结清的
索赔的
年迄今平均数
。 如果我使用
FILTER
函数,那么它会给出正确的结果:$3507.74

AVG_YTD_Indemn_Closed =
CALCULATE (
    AVERAGE ( fact_Losses[PaidIdemnity] ),
    FILTER (
        fact_Losses,
        fact_Losses[DateEntered].[Year] = YEAR ( TODAY () )
            && fact_Losses[ClaimStatus] = "Closed"
    )
)

但是如果我使用
TOTALYTD
函数,由于某种原因,我得到了不同的结果$4702.31:

AVG_YTD_Indemn_Closed1 =
CALCULATE (
    TOTALYTD ( AVERAGE ( fact_Losses[PaidIdemnity] ), dim_Date[Date] ),
    fact_Losses[ClaimStatus] = "Closed"
)

为什么会有这么大的差异?函数
TOTALYTD
如何计算与
过滤器不同的结果?

如前所述

如果您能理顺日期关系,我建议您使用此版本,因为
TOTALYTD
无法容纳您将来可能需要的其他筛选器,如前所述:


dim\u Date
是否与
fact\u loss
有关
[DateEntered]感谢您为我指明了正确的方向。我查看了源代码,发现DateEntered需要一些额外的逻辑。修改后,我得到了正确的号码。谢谢你,很高兴你成功了。在提出这个问题之前,我开始写一封回信,所以我继续写下去,并发表了自己的看法,因为这可能对未来的读者有用。
TOTALYTD (
    <EXPRESSION>,
    <DATES>
    [, <FILTER>]
    [, <YEARENDDATE>]
)
CALCULATE (
    <EXPRESSION>,
    DATESYTD ( <DATES> [, <YEARENDDATE>] )
    [, <FILTER>]
)
AVG_YTD_Indemn_Closed1 =
CALCULATE (
    CALCULATE(
        AVERAGE ( fact_Losses[PaidIdemnity] ),
        DATESYTD( dim_Date[Date] )
    ),
    fact_Losses[ClaimStatus] = "Closed"
)
AVG_YTD_Indemn_Closed1 =
CALCULATE (
    AVERAGE ( fact_Losses[PaidIdemnity] ),
    DATESYTD( dim_Date[Date] ),
    fact_Losses[ClaimStatus] = "Closed"
)