2013版基层自治组织统计代码数据整理

2013版基层自治组织统计代码数据整理

民政部网站上提供了基层组织统计代码,只有2012、2013两年有这个文件下载,同时这两年也提供了县以下行政代码表,htm格式的。因为每年都有行政区划的调整,2014至今都是只提供县以上的数据和县以下的变更数据。

2013版基层自治组织统计代码数据整理

我们今天来整理2013版的基层组织统计代码数据:

下载解压出文本文件

2013版基层自治组织统计代码数据整理

这个文件有23M数据73.7万行。

我们用Power Query作简单处理:

数据载入后是这个样子的:

用的TAB键来区分层级归属,这样的格式不方便我们作数据统计,所以我们要作适当地整理。

2013版基层自治组织统计代码数据整理

DAX中有PATH是非常适合处理这种层级结构数据,但是需要给出父级、子级的编码,然后才能用PATH类的函数来做数据统计。

子码整理比较简单,只是去掉多余的字符就可以了。

2013版基层自治组织统计代码数据整理

父级编码要复杂一些,我们先把源码分列用TAB分列:

2013版基层自治组织统计代码数据整理

这样我们就能看清楚真实的层级关系了,为了整理父级编码,我们需要向下填充所有的编码,在填充之前需要替换空白为null:

2013版基层自治组织统计代码数据整理

然后向下填充:

2013版基层自治组织统计代码数据整理

有的同学会说,两个省交界的位置会出现越界情况:

2013版基层自治组织统计代码数据整理

这个没关系,我们最后要通过子码来判断,子码与前面的每一列进行判断,相等才有结果。

作判断之前要对前面的这些列作格式整理,清楚不可见字符:

2013版基层自治组织统计代码数据整理

稳妥起见Text.Clean、Text.Trim都做一次,然后我们来创建父码:

2013版基层自治组织统计代码数据整理

其实原理很简单,就是用子码与前面的每一列对比,

这里还有特殊情况要处理,直辖市的第二列是null,所以我们要判断如果是直辖市,本来父级是第二列的要改成第一列,四个直辖市的二位编码是:

  1. 北京:11
  2. 天津:12
  3. 上海:31
  4. 重庆:50

多加一个if判断就好了。

最后删除前面的列就可以了:

2013版基层自治组织统计代码数据整理

DAX整理

数据统计的时候我们还是要处理一下直辖市的层级问题,不然直辖市的区会与其他省的地级市同级,所以我们要先做一个层级深度的调整:

2013版基层自治组织统计代码数据整理

通过这个度量值来调整直辖市区及以下组织代码的层级,直辖市区及以下组织代码的层级度加1.

我们可以用这个层级深度来作为筛选条件,筛选出各个层级的表格:

2013版基层自治组织统计代码数据整理

2013版基层自治组织统计代码数据整理

然后我们要统计这些数据就很简单啦,分别统计各个表的行数就可以了,当然我们也可以不用创建这些实际表,直接写在度量值中也是可以的。

我们可以根据层级关系来建立关系:

2013版基层自治组织统计代码数据整理

然后看统计结果:

2013版基层自治组织统计代码数据整理

各省地级市数量:

2013版基层自治组织统计代码数据整理

各省区县数量:

2013版基层自治组织统计代码数据整理

各省街道数量:

2013版基层自治组织统计代码数据整理

各省社区数量:

2013版基层自治组织统计代码数据整理

分解树:

2013版基层自治组织统计代码数据整理

展开阅读全文

页面更新:2024-04-27

标签:和县   民政部   代码   组织   数据   基层组织   层级   度量   直辖市   基层   深度   数量   单位   关系   行政   格式   科技

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top