You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

BI中多年期间年均增长率计算方法咨询

BI中多年期间年均增长率计算方法咨询

你好!我来帮你拆解年均增长率的计算逻辑,结合你给出的数据和DAX代码一步步理清楚~

先明确你的基础数据

你已经筛选出2015-2018年的核心数据:

  • 2015年数值:72
  • 2016年数值:77
  • 2017年数值:61
  • 2018年数值:97

同时你已经算出两个关键指标:

  • 期间总增长率:34.7%
  • 最后一年增长率:6.5%

现在需要推导的是**年均增长率10.4%**的计算方法。

年均增长率的核心数学逻辑

年均增长率是基于复利增长的计算,公式为:

年均增长率 = (期末值 / 期初值)^(1/增长周期数) - 1

对应你的数据:

  • 期初值:2015年的72
  • 期末值:2018年的97
  • 增长周期数:3(从2015到2018是3个年度增长周期:2015→2016、2016→2017、2017→2018)

代入计算:

  1. 先算期末/期初:97 / 72 ≈ 1.347(刚好对应你算出的期间总增长率34.7%,因为1.347-1=0.347
  2. 开3次方:1.347^(1/3) ≈ 1.104
  3. 减1得到年均增长率:1.104 - 1 = 0.104,也就是10.4%

对应到DAX代码的实现

结合你已经写的DAX逻辑,我们可以把年均增长率的度量值写出来:

首先,你已经定义了期初和期末的度量值:

QT_VG_FIRST = CALCULATE(Discentes[QT_VG_TOTAL_SUM], FIRSTNONBLANK(Discentes[NU_YEAR_CENSO].[Year], 0))
QT_VG_LAST = CALCULATE(Discentes[QT_VG_TOTAL_SUM], DATESYTD(Discentes[NU_YEAR_CENSO],"12/31"))

接下来计算增长周期数(也就是年份差),或者直接统计筛选范围内的年度数量减1:

QT_VG_GROWTH_PERIODS = COUNTROWS(DISTINCT(Discentes[NU_YEAR_CENSO].[Year])) - 1

最后计算年均增长率:

QT_VG_ANNUAL_AVG_GROWTH = 
IF(
    [QT_VG_FIRST] = 0, 
    0, 
    POWER(DIVIDE([QT_VG_LAST], [QT_VG_FIRST]), 1/[QT_VG_GROWTH_PERIODS]) - 1
)

这样计算出来的结果就是你需要的10.4%啦~

补充你提到的最后一年增长率的完整DAX

你给出了获取倒数第二年数值的度量值:

QT_VG_PENÚLTIMO = CALCULATE([QT_VG_TOTAL_SUM], DATEADD(LASTNONBLANK(Discentes[NU_YEAR_CENSO], 0), -1, YEAR))

对应的最后一年增长率度量值可以补充为:

QT_VG_LAST_YEAR_GROWTH = DIVIDE([QT_VG_LAST]-[QT_VG_PENÚLTIMO], [QT_VG_PENÚLTIMO], 0)

备注:内容来源于stack exchange,提问作者gustavofarias10

火山引擎 最新活动