• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
bobird的学习笔记
博客园    首页    新随笔    联系   管理    订阅  订阅
使用字段计算器对同一地类图斑自动编号(标记重复记录)

问题描述:在某个表中把某个字段(如字段一)中具有相同值的记录标出来,并且按照从小到大的排序自动增加一个编号,存储在字段二中,实现如下的效果:

FID 字段1 字段2

1    001   0011 2    001   0012

3    002   0021

4    002   0022

 

解决方法:在ArcGIS10中实现方法如下,字段2右键调出字段计算器,选择Python脚本,在代码块中写:

UniqueDict = {}

def isDuplicateIndex(inValue):

    UniqueDict.setdefault(inValue,0)

    UniqueDict[inValue] += 1

    return str(inValue)+str(UniqueDict[inValue])

(函数体要缩进)

 

在字段2=的语句下面写:

isDuplicateIndex( !字段1! )

即可实现问题中的要求,字段计算器是一个强大的为字段赋值的工具,支持Python和VBScript代码,并且可以在Model Builder中调用。该代码可以按照地类对图斑进行编号,或者按某个行政区的字段对图斑进行编号。

posted on 2013-05-14 21:36  bobird  阅读(403)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3