使用DAX计算组分析辽宁各城市各年龄段人口占比的环比数据
我们想要分析一下辽宁省各地级市的人口年龄段数据,看看老龄化是个别城市的问题,还是全省的问题?
辽宁省统计局网站上可以下载到2012年到2020年的辽宁省统计年鉴:
每年的年鉴中的4-6就是各城市的各年龄段数据:
我们把这些文件复制出来,重命名放到一个单独文件夹中:
使用Power Query合并这些数据:
调整好数据类型就可以加载了。
我们要计算环比增长,就要用到年这一列,单独建一个表:
建立关系:
度量值编写:
各年龄段占比的度量值:
18岁以下占比 =
VAR OLD =
SUM ( csv[18岁以下] )
VAR T =
SUM ( csv[总人口] )
VAR RE =
DIVIDE (
OLD,
T
)
RETURN
RE
其他几个度量值参照这个编写。
接下我们打开Tabilar Editor
Power BI Desktop虽然支持计算组,但没有提供计算组的编辑工具,所以我们要自己安装一个三方工具来编写计算组。
我们创建一个环比的计算组,然后在计算组中添加计算项:
DAX函数中SELECTEDMEASURE函数就是专为计算组设计的,我们可以通过这个函数,在前端交互中对添加到分析中的度量值,运行计算组中计算项中规定的运算。
VAR p =
SELECTEDVALUE ( '年表'[年] )
VAR t =
CALCULATETABLE (
csv,
FILTER (
ALL ( '年表' ),
'年表'[年] = p - 1
)
)
VAR e =
CALCULATE (
SELECTEDMEASURE (),
t
)
VAR re =
DIVIDE (
SELECTEDMEASURE (),
e
) - 1
RETURN
IF (
e = 0,
BLANK (),
re
)
这个计算项中,我们用SELECTEDVALUE来计算本年与上一年的选中的度量值的值。
计算本年度量值就用这个计算项:
计算上一年的度量值的值:
然后我们按这个按钮,同步到PBI:
我们来到Power BI Desktop中,看看我们添加的计算组:
相当于在模型中增加一个表,表中有两列一列是计算项的名称,一列是计算项排序。大家可以把这个想象成切片器,事实上也确实可以用作切片器,我们来做一个矩阵表,用我们之前设计的各个年龄段的人口占比的度量值:
计算组的计算项名称和各城市作为切片器,我们就可以方便地查看各城市各年龄段人口占比的近几年的变化:
通过上面的动图查看各城市的人口变化情况:
当然我们也可以查看各城市人口占比的本年数据与上年数据:
如果我们对照沈阳市的这两张图,就能看到老龄化率是在不断升高,但是从每年6%的增速降到了1.8%。
以上就是我们从统计局网站获取数据,到实现人口占比增长率分析的过程。
页面更新:2024-04-28
本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828
© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号