题目中说的合并
指的是合并矢量,也叫融合
问题描述
手中有一个行政区矢量,想要合并相同字段的数据,比如根据行政编码合并各县,形成市级矢量边界。
- 合并相同的area_code,这个area_code是完全一致的
- area_code的编码有规律可言,前几位代表省级,再往后代表市级、区县级,最后才是乡镇级别,只有一串area_code,如何合并出这省市县乡四种级别呢?
1 合并相同的area_code,这个area_code是完全一致的
-
打开
融合
工具
-
选择融合字段
area_code
-
打开属性表,查看融合结果,发现已经合并成果
2 area_code的编码有规律可言,前几位代表省级,再往后代表市级、区县级,最后才是乡镇级别,只有一串area_code,如何合并出这省市县乡四种级别呢?
有三种方法
-
在QGIS的属性表中新建字段,然后用
字段计算器
赋值,表达式为left("NewField" ,5)
,这个5就是截取的数字位-
打开属性表,点击右上角的
编辑
-
点击
新建字段
-
在属性表上面的赋值框,令
xian==area_code
,点击全部更新
-
打开
字段计算器
,选择更新现有字段
,输入表达式:left("xian" ,6)
-
查看计算结果,可见只取了左边6位数,删除了后面三位数
-
最后一步融合,就和前面说的方法一样,没啥好说的了
-
-
在属性表中新建字段,从area_code中赋值到新字段,选择相应的code长度,比如原始area_code是36001255,那么新建code就取前五位数字,即36001
这一步我就不演示了,思路如下,很简单 😃- 首先,将属性表导出为xlsx,具体步骤可见文章QGIS导出属性表为xlsx
- 在Excel中新建列,用Excel中的工具截取刚刚的area_code,组成新字段,再使用连接工具导入QGIS,成为QGIS的属性表,这一步可以参考文章QGIS导入xlsx为属性表(链接Excel文件)
-
用python代码,我还不会这个操作 😦
感谢观看!