python 在arcmap中从重复值中选取最大值

drtianfenghao 2016-08-08 08:38:37
如题:

中ZDH列中有重复值【1,2,3,4,5】 目前已经可可以将ZDH列中重复值列出来 ,需要将ZDH重复的部分中计算area中最大值并将最大值在ZH列中以1提现出来。
例如:ZDH中1的area中最大的是5,在ZH列的5的一行中赋值1
请各位大神帮忙代码!万分感谢,倾家荡产给积分!!!!!
...全文
432 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
drtianfenghao 2016-08-11
  • 打赏
  • 举报
回复
正因为不懂 我才问么 我要是懂能发帖子问么 感谢你的帮助 谢谢
屎克螂 2016-08-11
  • 打赏
  • 举报
回复
看你这样说,你这是什么都不懂啊,那让别人怎么教你呢? 先看下书 学习下语法吧
drtianfenghao 2016-08-11
  • 打赏
  • 举报
回复
而且k, v = xl[0], xl[1] 这一句显示是错误的,您的代码没问题 ,只是到Arcpy中显示是错误的,因为在gis中输出的数据格式是这样的
请您帮助我 谢谢
drtianfenghao 2016-08-11
  • 打赏
  • 举报
回复
感谢您的回复! 请问如何在面积大的后面标上1呢 而不是最大面积的数值 ! 非常感谢!
屎克螂 2016-08-09
  • 打赏
  • 举报
回复
a = """
1 1 0
1 1 0
1 5 0
2 3 0
2 4 0
3 5 0
"""
aDict = {}
aList = [x for x in a.split('\n') if x]
for i, x in enumerate(aList):
    xl = x.split(' ')
    k, v = xl[0], xl[1]
    if k in aDict.keys():
        if v > aDict[k]['v']:
            aDict[k] = {'v': v, 'd': '%s %s %s' %(k, v, v), 'i': i}
    else:
        aDict[k] = {'v': v, 'd': '%s %s %s' %(k, v, v), 'i': i}
for v in aDict.itervalues():
    aList[v['i']] = v['d']
print '\n'.join(aList)
1 1 0
1 1 0
1 5 5
2 3 0
2 4 4
3 5 5

37,720

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧