2301_76251488 2023-10-23 18:00 采纳率: 0%
浏览 7

arcgis批量进行平均最临近分析

文件夹里有4000多个shp文件,怎么对这些文件批量挨个执行平均最临近,得到每个文件的平均最临近距离这些结果。
试了模型构建器失败。不知道咋办了

  • 写回答

1条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-10-24 12:30
    关注

    引自强大而免费的微信小程序:皆我百晓生

    使用ArcGIS进行批量平均最临近分析可以借助ModelBuilder或Python脚本来实现。下面是一种使用Python脚本实现的方法:

    1. 创建一个新的Python脚本(例如平均最临近.py),在ArcMap中打开Python窗口,点击“新建Python脚本”按钮。
    2. 将以下代码复制到Python脚本中:
    import arcpy
    from arcpy import env
    
    # 设置工作环境为文件夹所在的路径,此处为示例路径,请根据实际情况修改
    env.workspace = r"C:\path\to\your\folder"
    
    # 列出文件夹中的所有.shp文件
    shp_list = arcpy.ListFeatureClasses("*.shp")
    
    # 循环读取每个.shp文件进行平均最临近分析
    for shp_file in shp_list:
        output_path = arcpy.Describe(shp_file).catalogPath
        output_name = arcpy.Describe(shp_file).baseName
        
        # 执行平均最临近分析
        arcpy.AverageNearestNeighbor_stats(shp_file, output_path + "\\" + output_name + "_result")
    
        # 获取平均最临近距离结果
        result = arcpy.GetMessages()
        print(result)
    
    1. 修改代码中的env.workspace为包含你的.shp文件的文件夹路径。
    2. 运行Python脚本,它将自动在每个.shp文件上执行平均最临近分析,并将结果输出到同一文件夹中。

    请注意,这个脚本假设你的.shp文件都是在同一个文件夹中,且没有嵌套的文件夹。如果你的.shp文件在不同的文件夹中或有文件夹的嵌套结构,请根据实际情况调整代码。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月23日

悬赏问题

  • ¥15 TeleScan不能修改bar
  • ¥100 请问我基于逐飞库写的这个有关于mp u6050传感器的函数,为什么输出的值是固定的?
  • ¥15 hadoop中启动hive报错如下怎么解决
  • ¥15 如何优化QWebEngineView 加载url的速度
  • ¥15 关于#hadoop#的问题,请各位专家解答!
  • ¥15 如何批量抓取网站信息
  • ¥15 Spring Boot离线人脸识别
  • ¥15 使用Ant Design Pro vue的时候,使用环境变量的时候,构建报错是什么原因
  • ¥15 NRF24L01能发送但是不能接收
  • ¥15 想问一下这种情况怎么解决呢(关键词-file)