QGIS批量按照excel中土地利用类型,进行重新分类

news/2025/2/22 6:27:38/

可以使用Python编写脚本来实现QGIS中的批量重分类。以下是大致的步骤:

1. 打开QGIS,打开需要进行重分类的矢量图层。
2. 在图层管理器中,右键单击该图层并选择“属性”。
3. 在属性表中,找到需要进行重分类的土地利用类型字段,并记录下其名称。
4. 将需要进行重分类的土地利用类型及其对应的新分类值保存在Excel文件中。
5. 使用Python的pandas库读取Excel文件,并将其转换为一个字典。
6. 使用PyQGIS编写Python脚本,将字典中的每个键值对映射到需要重分类的矢量图层上。
7. 运行Python脚本,完成批量重分类。

以下是Python脚本的示例代码:


import pandas as pd
from qgis.core import QgsVectorLayer, QgsField, QgsExpression, QgsFeature, QgsFeatureRequest

# 读取Excel文件并转换为字典
df = pd.read_excel('land_use.xlsx')
land_use_dict = dict(zip(df['Original'], df['New']))

# 获取需要重分类的矢量图层
layer = QgsVectorLayer('path/to/your/layer.shp', 'layer_name', 'ogr')

# 添加新的分类字段
new_field = QgsField('New_Class', QVariant.String)
layer.dataProvider().addAttributes([new_field])
layer.updateFields()

# 遍历每个要素并进行重分类
request = QgsFeatureRequest().setFlags(QgsFeatureRequest.NoGeometry)
for feature in layer.getFeatures(request):
    old_value = feature['Old_Class']
    new_value = land_use_dict.get(old_value, 'Unknown')
    feature['New_Class'] = new_value
    layer.dataProvider().updateFeatures([feature])
 

请注意,此示例代码仅供参考,并可能需要根据您的具体情况进行修改。


http://www.ppmy.cn/news/901715.html

相关文章

怎么在ubantu系统切换到Windows上

在 Ubuntu 系统中可以使用 Wubi 来安装 Windows,Wubi 是专为 Ubuntu 系统提供的一种安装 Windows 的方法。您只需要下载 Wubi 并运行它,它会自动安装 Windows,并且可以在开机的时候选择 Ubuntu 或 Windows 系统。

linux(ubuntu) python 版本切换

在ubuntu里默认安装了python2和python3两个版本,而默认是使用python2的。 如果我们想改成python3怎么办呢? 可以使用linux的alternatives功能,alternatives常用于管理同一个系统中安装同一个软件的多个版本。比如说python2和python3. alter…

Ubuntu系统下yolov5转换tensorrt

yolov5转换tensorrt,转换过程不算太难,但是配环境差点要了老命,整整一个月左右才弄好,踩尽了坑。 一.cuda的安装 首先系统需要安装cuda,如果系统已经安装了cuda就跳过这一步就好了。 cuda的下载地址: h…

Ubuntu18.04切换Python版本

一、查看是否存在python可选项并添加 update-alternatives --display python 如果提示以下信息说明不存在可选项,需要我们自行添加。 update-alternatives: 错误: 无 python 的候选项 添加python2与python3的选项组: 注意:此处的python3…

XP或Win7系统下grub4dos安装双系统ubuntu(32或64)

1、grub4dos在xp系统下引导安装ubuntu系统 先不要删除相关文件,只装好ubuntu不要按照文档做其他修改,保留一会 http://pan.baidu.com/s/1o6wiFr0 这个只能将ubuntu安装到空闲分区还没办法从xp或win7下引导进入ubuntu,解决方法是,再…

ubuntu文件格式转换

ubuntu系统默认情况下是没有安装unix2dos和dos2unix,busybox默认安装这两个命令。 以下为记录安装另一个软件tofrodos: sudo apt-get install tofrodos 实际上已安装了两个工具: todos 相当于unix2dos fromdos 相当于dos2unix 安装完即…

通用pe 装linux系统,U盘“安装”Ubuntu 14.04操作系统详细教程(转)

Ubuntu是目前主流的Linux桌面操作系统,学习Linux系统的新手首选也是Ubuntu 系统。下面“孤狼”就以最新版的Ubuntu 14.04.1为例,制作U盘启动安装的详细过程。 准备工具: 下载“ 注:这里孤狼以全新硬盘安装为例,手动磁盘…

window 7下用U盘安装ubuntu14.04双系统

【一】前期准备: 1、大于2G的U盘一个 2、已下载好的Ubuntu系统镜像(注意32和64位的选择,如果上述网站没有则可以去ubuntu官网下载) 3、已安装好UltraISO软件(或者是PowerISO软件) 4、打算安装Ubuntu的电脑(我的电脑已安装好64位Win7系统) 【二】UItralS…