赞
踩
很多人用arcgis 做土地利用类型分类的时候,可能会遇到一类问题,就是想根据属性表中的value 数字值做分类赋值,for example,我想给下面的属性表赋值。
普通处理:
打开属性表-文件-按属性选择-value=1: 再选择name字段,进行字段计算器计算,每一类都要进行这样的操作,在处理大数据的时候会很麻烦,浪费很多时间,今天分享给大家一个快速分类赋值方法,用到的是python语言:大家请看图示
话不多说,直接上代码:
- dim cal(x):
- if x==1:
- return "交通用地"
- elif x==2:
- return "坑塘"
- elif x==3:
- return "建筑用地"
- else:
- return "其他类型"
下面的name字段选择 cal(!value!)
计算逻辑:
用value 值进行name列赋值,其中1=交通用地 2=坑塘。。。。(具体命名自定)
代码解释:
def cal(x): %%% cal是表达式,可以替换成其他短词,def对x进行定义
if (x==1): %%% 判断x等不等于1
return "交通用地" %%%等于1,给X赋值‘交通用地’
elif (x==2): %%%p判断x等不等于2
return "坑塘" %%%等于2,给x赋值“坑塘”
elif(x==3): %%%elif可以根据自己的分类需求, 每一类都添加elif
return "建筑用地"
else: %%最后要有else,构成一个完整的if 循环
return "其他用地"
Name:
Cal(!Value!) %%%让value 中的值执行以上逻辑计算
注意事项:
感谢大家的观看 ,希望能帮到初学者~
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。