ArcGIS Desktop

  • 文档
  • 支持

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

局部异常值分析

  • 摘要
  • 插图
  • 用法
  • 语法
  • 代码示例
  • 环境
  • 许可信息

摘要

标识出空间和时间环境中的统计显著性聚类和异常值。该工具是 Anselin Local Moran's I 统计的时空实现。

了解有关局部异常值分析工具工作原理的详细信息

插图

局部异常值分析

用法

  • 此工具仅接受由通过聚合点创建时空立方体工具创建的 netCDF 文件。

  • 时空立方体中的每一个条柱都具有 LOCATION_ID、time_step_ID、COUNT 值以及创建立方体后汇总的所有汇总字段。与同一物理位置相关的条柱将共享同一位置 ID,这些条柱组合起来可表示时间序列。与同一时间步长间隔相关的条柱将共享同一时间步长 ID,这些条柱组合起来可构成时间片。每个条柱的计数值反映在相关时间步长间隔内出现在相关位置的点的数量。

    每个条柱都有位置 ID、时间步长 ID 和计数

  • 此工具使用 Anselin Local Moran's I 统计的时空实现来分析 netCDF 输入时空立方体中的变量。

  • 输出要素将添加到内容列表,并对所有分析位置的时空分析汇总结果进行渲染。如果指定面分析掩码,分析位置为落入分析掩膜范围内的位置;否则,分析位置为至少含有一个时间步长间隔的至少一个点的位置。

    含有数据或不含数据的立方体位置

  • 除了输出要素以外,还将分析汇总写入结果窗口中。右键单击结果窗口中的消息条目并选择查看后,将在消息对话框中显示分析汇总。分析汇总还将显示在进度对话框中。

  • 局部异常值分析工具会标识出空间和时间环境中的统计显著性聚类和异常值。有关默认输出类别定义和此分析工具所采用算法的详细信息,请参阅了解有关局部异常值分析工具的工作原理。

  • 为识别该时空立方体中的聚类和异常值,此工具使用了 Anselin Local Moran's I 统计的时空实现,该统计考虑了相邻条柱值环境中每个条柱的值。如果条柱的质心落在邻域距离范围内并且其时间间隔在指定的邻域时间步长范围内,条柱将视为邻域。如果未提供邻域距离值,将基于点数据的空间分布来计算邻域距离值。如果未提供邻域时间步长值,该工具将使用默认值,即 1 个时间步长间隔。

  • 要确定每个分析邻域中将包括哪些条柱,工具首先要查找落在指定邻域距离范围内的相邻条柱。然后,对于这些条柱中的每个条柱,包括位于上 N 个时间步长的相同位置的条柱,其中 N 是指定的邻域时间步长值。

  • 邻域时间步长值是分析邻域中包括的时间步长间隔的数量值。例如,如果立方体的时间步长间隔为三个月并且指定邻域时间步长为 2,则分析邻域中将包括邻域距离范围内的所有条柱计数和其上两个时间步长间隔(涵盖九个月的时间段)的所有相关条柱。

  • 排列可用于确定找到您所分析值的实际空间分布的可能性。对于各个排列而言,各条柱周围的邻域值将随机进行重新排列,并会计算出 Local Moran's I 值。结果即为值的参考分布,随后会将该参考分布与实际观测到的 Moran's I 进行比较,以确定在随机分布中查找到观测值的可能性。默认为 499 次排列;然而,随机样本分布会随着排列的增加而改进,进而提高伪 p 值的精度。

  • 如果将排列数参数设置为 0,则结果为传统 p 值而不是伪 p 值。

  • 该工具所采用的排列可利用具有多个 CPU(或多核 CPU)的系统来提高性能。该工具会默认使用可用 CPU 最大数量的一半。在更大的时空立方体中或具有更大排列数目的工具运行中,处理速度的增量最为明显。所用的 CPU 数目可以通过使用并行处理因子环境增加或减少。

  • 面分析掩膜要素图层可能包括一个或多个定义分析研究区域的面。这些面将指出点要素可能发生的位置,还应该排除不可能存在点的区域。例如,如果正在分析入室盗窃趋势,可以使用面分析掩码来排除没有任何家庭的大湖、国家公园或其他区域。

  • 面分析掩码与输入时空立方体的范围相交并且不会扩展立方体的尺寸。

  • 如果用于设置研究区域的面分析掩膜的覆盖范围超过最初创建立方体时所使用的输入要素范围,可以使用面分析掩膜作为输出范围环境来重新创建立方体。这将确保面分析掩膜所覆盖的全部区域都包括在局部异常值分析工具中。创建立方体期间,将面分析掩膜用作输出范围环境设置,以确保立方体的范围与面分析掩膜的范围匹配。

  • 该工具可使用时空立方体中各位置的下列属性来创建新的输出要素类。以下字段可用于自定义输出的可视化。有关其他分析结果的详细信息,请参阅了解有关局部异常值分析工具的工作原理。
    • 异常值数
    • 异常值百分比
    • 低聚类数
    • 低聚类百分比
    • 低异常值数
    • 低异常值百分比
    • 高聚类数
    • 高聚类百分比
    • 高异常值数
    • 高异常值百分比
    • 无空间领域的位置
    • 最近时间步长内出现异常值的位置
    • 聚类异常值类型
    • 和其他汇总统计
  • 聚类异常值类型将始终指示置信度为 95% 的统计显著性聚类和异常值,并且仅具有统计显著性的条柱才能拥有此字段中的值。该显著性可反映出错误发现率 (FDR) 校正。

  • 输出要素类的默认渲染基于 CO_TYPE 字段,并会显示统计显著性的位置。它将会显示作为显著性高-高聚类、高-低异常值、低-高异常值、低-低聚类中一部分的位置,或曾经归类为多种类型的位置。
  • 为确保每个位置至少有 1 个时态邻域,不会在第一个时间片中计算 Local Moran's 指数。但是,第一个时间片中的条柱值将包含在全局平均值的计算中。

  • 通过运行局部异常值分析可将一些分析结果添加回 netCDF 输入时空立方体中。在相邻条柱环境中分析各个条柱,以测量聚类的高值和低值,并识别出各个聚类中的所有空间和时间异常值。该分析的结果为时空立方体中各条柱的 Local Moran's I 指数、伪 p 值(如果未使用排列,则为 p 值)以及聚类或异常值类型 (CO_TYPE)。

    添加到输入时空立方体的变量汇总如下:

    变量名称说明维度

    OUTLIER_{ANALYSIS_VARIABLE}_INDEX

    计算得出的 Local Moran's I 指数。

    三个维度:时空立方体中每个条柱对应一个 Local Moran's I 指数值。

    OUTLIER_{ANALYSIS_VARIABLE}_PVALUE

    Anselin Local Moran's I 统计伪 p 值或 p 值,用于测量 Local Moran's I 值的统计显著性。

    三个维度:时空立方体中每个条柱对应一个 p 值或伪 p 值。

    OUTLIER_{ANALYSIS_VARIABLE}_TYPE

    结果类别类型,可区分具有统计显著性的高值(高-高)聚类、低值(低-低)聚类、高值主要由低值围绕的异常值(高-低)以及低值主要由高值围绕的异常值(低-高)。

    三个维度:时空立方体中每个条柱对应一个聚类或异常值类型。条柱基于 FDR 校正。

    OUTLIER_{ANALYSIS_VARIABLE}

    _HAS_SPATIAL_NEIGHBORS

    表示具有空间邻域以及只依赖于时间邻域的位置。

    两个维度:每个位置对应一个分类。对不具有空间邻域的位置进行分析将致使计算仅依赖于时态邻域。

语法

LocalOutlierAnalysis_stpm (in_cube, analysis_variable, output_features, {neighborhood_distance}, neighborhood_time_step, {number_of_permutations}, {polygon_mask})
参数说明数据类型
in_cube

要分析的 netCDF 立方体。此文件必须具有 (.nc) 扩展名,并且必须使用通过聚合点创建时空立方体工具进行创建。

File
analysis_variable

要分析的 netCDF 文件中的数值变量。

String
output_features

输出要素类,包含被视为统计显著性聚类或异常值的位置。

Feature Class
neighborhood_distance
(可选)

分析邻域的空间范围。该值用于确定应将哪些要素一起分析以便访问本地时空聚类。

Linear Unit
neighborhood_time_step

包含在分析邻域中的时间步长间隔数。该值用于确定应将哪些要素一起分析以便访问本地时空聚类。

Long
number_of_permutations
(可选)

伪 p 值计算对应的随机排列数。默认排列次数为 499。如果选择 0 次排列,则会计算标准 p 值。

  • 0 —未使用排列时,将计算标准 p 值。
  • 99 —如果有 99 个排列,则可能的最小伪 p 值为 0.01,其他所有伪 p 值将是该值的偶数倍。
  • 199 —如果有 199 个排列,则可能的最小伪 p 值为 0.005,其他所有伪 p 值将是该值的偶数倍。
  • 499 —如果有 499 个排列,则可能的最小伪 p 值为 0.002,其他所有伪 p 值将是该值的偶数倍。
  • 999 —如果有 999 个排列,则可能的最小伪 p 值为 0.001,其他所有伪 p 值将是该值的偶数倍。
  • 9999 —如果有 9999 个排列,则可能的最小伪 p 值为 0.0001,其他所有伪 p 值将是该值的偶数倍。
Long
polygon_mask
(可选)

具有用于定义分析研究区域的一个或多个面的面要素图层。例如,可使用面分析掩膜将大湖从分析中排除。在输入时空立方体中定义并落在掩码外的条柱将不包括在分析中。

Feature Layer

代码示例

LocalOutlierAnalysis 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何使用 LocalOutlierAnalysis 工具。

# LocalOutlierAnalysis of homicides in a metropolitan area
arcpy.env.workspace = r"C:\STPM"
arcpy.LocalOutlierAnalysis_stpm("Homicides.nc", "COUNT", "LOA_Homicides.shp", "5 Miles", 2, 499, "#")
LocalOutlierAnalysis example 示例 2(独立 Python 脚本)

以下独立 Python 窗口脚本演示了如何使用 LocalOutlierAnalysis 工具。

# Create Space Time Cube by aggregating homicide incidents in a metropolitan area
# Import system modules
import arcpy
# Set property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = r"C:\STPM"
try:
    # Set the current workspace (to avoid having to specify the full path to the feature 
    # classes each time)
    arcpy.env.workspace = workspace
    # Create Space Time Cube by aggregating homicide incident data with 3 months and 3 miles settings
    # Process: Create Space Time Cube By Aggregating Points
    cube = arcpy.CreateSpaceTimeCube_stpm("Homicides.shp", "Homicides.nc", "MyDate", "#", 
                                          "3 Months", "End time", "#", "3 Miles", "Property MEDIAN SPACETIME; Age STD ZEROS", "HEXAGON_GRID")
    # Create a polygon that defines where incidents are possible  
    # Process: Minimum Bounding Geometry of homicide incident data
    arcpy.MinimumBoundingGeometry_management("Homicides.shp", "bounding.shp", "CONVEX_HULL",
                                             "ALL", "#", "NO_MBG_FIELDS")
    # Local Outlier Analysis of homicide incident cube using 5 Miles neighborhood 
    # distance and 2 neighborhood time step with 499 permutations to detect outliers
    # Process: Local Outlier Analysis
    loa = arcpy.LocalOutlierAnalysis_stpm("Homicides.nc", "COUNT", "LOA_Homicides.shp", "5 Miles",
                                          2, 499, "bounding.shp")
except:
    # If any error occurred when running the tool, print the messages
    print(arcpy.GetMessages())

环境

  • 当前工作空间
  • 临时工作空间
  • 输出坐标系
  • 地理变换
  • 随机数生成器
    注:

    使用的随机数生成器类型始终为 Mersenne Twister。

许可信息

  • ArcGIS Desktop Basic: 是
  • ArcGIS Desktop Standard: 是
  • ArcGIS Desktop Advanced: 是

相关主题

  • 局部异常值分析的工作原理
  • 通过聚合点创建时空立方体
  • 可视化时空立方体
  • 什么是 z 得分?什么是 p 值?
  • “聚类和异常值分析 (Anselin Local Moran's I)”的工作原理
  • 时空模式挖掘工具箱概述

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • 内部人员博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2018 Esri. | 隐私政策 | 法律声明