描述
识别使用通过聚合点创建时空立方体工具创建的时空立方体中点密度(计数)或汇总字段聚类中的趋势。类别包含新增的、连续的、加强的、持续的、逐渐减少的、分散的、振荡的以及历史的热点和冷点。
插图
使用方法
此工具仅接受由通过聚合点创建时空立方体工具创建的 netCDF 文件。
时空立方体中的每一个立方图格都具有 LOCATION_ID、time_step_ID、COUNT 值以及创建立方体后聚合的所有汇总字段。与同一物理位置相关的立方图格将共享同一位置 ID,这些立方图格组合起来可表示时间序列。与同一时间步长间隔相关的立方图格将共享同一时间步长 ID,这些立方图格组合起来可构成时间片。每个立方图格的计数值反映在相关时间步长间隔内出现在相关位置的点的数量。
此工具使用 Getis-Ord Gi* 统计的时空实现来分析 NetCDF 输入时空立方体中的变量。
输出要素将添加到内容列表,并对所有分析位置的时空分析汇总结果进行渲染。如果指定面分析掩膜,分析位置为落入分析掩膜范围内的位置;否则,分析位置为至少含有一个时间步长间隔的至少一个点的位置。
除了输出要素以外,还将分析汇总写入结果窗口中。右键单击结果窗口中的消息条目并选择查看后,将在消息对话框中显示分析汇总。分析汇总还将显示在进度对话框中。
新兴时空热点分析工具可以检测八种特定热点或冷点趋势:新增的、连续的、加强的、持续的、逐渐减少的、分散的、振荡的和历史的。有关输出类别定义和此工具所采用算法的详细信息,请参阅了解有关新兴时空热点分析工具原理的详细信息。
为了获得要素聚类的强度测量,此工具使用了 Getis-Ord Gi* 统计的时空实现,该统计考虑了相邻立方图格值的上下文内每个立方图格的值。如果立方图格的质心落在邻域距离范围内并且其时间间隔在指定的邻域时间步长范围内,立方图格将视为邻域。如果未提供邻域距离值,将基于点数据的空间分布来计算邻域距离值。如果未提供邻域时间步长值,工具将使用默认值,即 1 个时间步长间隔。
要确定每个分析邻域中将包括哪些立方图格,工具首先要查找落在指定邻域距离范围内的相邻立方图格。然后,对于这些立方图格中的每个立方图格,包括位于上 N 个时间步长的相同位置的立方图格,其中 N 是指定的邻域时间步长值。
邻域时间步长值是分析邻域中包括的时间步长间隔的数量值。例如,如果立方体的时间步长间隔为三个月并且指定邻域时间步长为 2,则分析邻域中将包括邻域距离范围内的所有立方图格计数和其上两个时间步长间隔(涵盖九个月的时间段)的所有相关立方图格。
面分析掩膜要素图层可能包括一个或多个定义分析研究区域的面。这些面将指出点要素可能发生的位置,还应该排除不可能存在点的区域。例如,如果正在分析入室盗窃趋势,可以使用面分析掩膜来排除没有任何家庭的大湖、国家公园或其他区域。
面分析掩膜与输入时空立方体的范围相交,不会扩展立方体的尺寸。
如果用于设置研究区域的面分析掩膜的覆盖范围超过最初创建立方体时所使用的输入要素范围,可以使用面分析掩膜作为输出范围环境来重新创建立方体。运行新兴时空热点分析工具时,这将确保包括面分析掩膜覆盖的所有区域。创建立方体期间,将面分析掩膜用作输出范围环境设置,以确保立方体的范围与面分析掩膜的范围匹配。
通过运行新兴时空热点分析可将一些分析结果添加回 netCDF 输入时空立方体中。可执行三个分析:
- 对相邻立方图格前后环境内的每个立方图格进行分析来测量高值和低值聚类的密集程度。此分析的结果为时空立方体中每个立方图格的 z 得分、p 值和分组类别。
- 使用 Mann-Kendall 统计来评估分析的位置的这些 z 得分的时间序列。此分析的结果为每个位置的聚类趋势 z 得分、p 值和分组类别。
- 最后,使用 Mann-Kendall 统计来评估分析的位置的值的时间序列。此分析的结果为每个位置的趋势 z 得分、p 值和分组类别。
添加到输入时空立方体的变量汇总如下:
变量名称 描述 维度 EMERGING_{ANALYSIS_VARIABLE}_HS_PVALUE
Getis-Ord Gi* 统计 p 值可度量高值(热点)和低值(冷点)聚类的统计显著性。
三个维度:时空立方体中每个立方图格对应一个 p 值。
EMERGING_{ANALYSIS_VARIABLE}_HS_ZSCORE
Getis-Ord Gi* 统计 z 得分可度量高值(热点)和低值(冷点)聚类的强度。
三个维度:时空立方体中每个立方图格对应一个 z 得分。
EMERGING_{ANALYSIS_VARIABLE}_HS_BIN
用于将每个立方图格分类为统计显著性热点值或冷点值的结果类别。立方图格基于 FDR 校正。
- -3:冷点,置信度为 99%
- -2:冷点,置信度为 95%
- -1:冷点,置信度为 90%
- 0:非统计显著性热点或冷点
- 1:热点,置信度为 90%
- 2:热点,置信度为 95%
- 3:热点,置信度为 99%
三个维度:时空立方体中每个立方图格对应一个分组类别。立方图格基于 FDR 校正。
{ANALYSIS_VARIABLE}_TREND_PVALUE
Mann-Kendall p 值可度量位置的值趋势的统计显著性。
{ANALYSIS_VARIABLE}_TREND_ZSCORE
z 得分可度量与位置的值相关的 Mann-Kendall 统计趋势(上升或下降)。正的 z 得分表示上升趋势;负的 z 得分表示下降趋势。
{ANALYSIS_VARIABLE}_TREND_BIN
用于将每个位置分类为具有值的统计显著性上升或下降趋势的结果类别。
- -3:向下趋势,置信度为 99%
- -2:向下趋势,置信度为 95%
- -1:向下趋势,置信度为 90%
- 0:无显著性趋势
- 1:向上趋势,置信度为 90%
- 2:向上趋势,置信度为 95%
- 3:向上趋势,置信度为 99%
两个维度:每个分析的位置对应一个分组类别。
EMERGING_{ANALYSIS_VARIABLE}_TREND_PVALUE
Mann-Kendall p 值可度量位置的热点/冷点 z 得分趋势的统计显著性。
EMERGING_{ANALYSIS_VARIABLE}_TREND_ZSCORE
z 得分可测量与位置的热点/冷点 z 得分趋势相关的上升或下降 Mann-Kendall 趋势。正的 z 得分表示上升趋势;负的 z 得分表示下降趋势。
EMERGING_{ANALYSIS_VARIABLE}_TREND_BIN
用于将每个位置分类为具有热点/冷点 z 得分的统计显著性上升或下降趋势的结果类别。
- -3:向下趋势,置信度为 99%
- -2:向下趋势,置信度为 95%
- -1:向下趋势,置信度为 90%
- 0:无显著性趋势
- 1:向上趋势,置信度为 90%
- 2:向上趋势,置信度为 95%
- 3:向上趋势,置信度为 99%
两个维度:每个分析的位置对应一个分组类别。
EMERGING_{ANALYSIS_VARIABLE}_CATEGORY
17 个类别中的一个,1 到 8、0 和 -1 到 -8。
- 1,新增热点
- 2,连续热点
- 3,加强的热点
- 4,持续的热点
- 5,逐渐减少的热点
- 6,分散热点
- 7,振荡的热点
- 8,历史热点
- 0,未检测到模式
- 1,新增冷点
- -2,连续冷点
- -3,加强的冷点
- -4,持续的冷点
- -5,逐渐减少的冷点
- -6,分散冷点
- -7,振荡的冷点
- -8,历史冷点
两个维度:每个分析的位置对应一个类别。
语法
arcpy.stpm.EmergingHotSpotAnalysis(in_cube, analysis_variable, output_features, {neighborhood_distance}, {neighborhood_time_step}, {polygon_mask})
参数 | 说明 | 数据类型 |
in_cube | 要分析的 netCDF 立方体。此文件必须具有 (.nc) 扩展名,并且必须使用通过聚合点创建时空立方体工具进行创建。 | File |
analysis_variable | 要分析的 netCDF 文件中的数值变量。 | String |
output_features | 输出要素类结果。此要素类为数据中热点和冷点趋势的二维地图表达。例如,将显示任何新热点或加强的热点。 | Feature Class |
neighborhood_distance (可选) | 分析邻域的空间范围。该值用于确定应将哪些要素一起分析以便访问本地时空聚类。 | Linear Unit |
neighborhood_time_step (可选) | 包含在分析邻域中的时间步长间隔数。该值用于确定应将哪些要素一起分析以便访问本地时空聚类。 | Long |
polygon_mask (可选) | 具有用于定义分析研究区域的一个或多个面的面要素图层。例如,可使用面分析掩膜将大湖从分析中排除。在输入时空立方体中定义并落在掩膜外的立方图格将不包括在分析中。 | Feature Layer |
代码示例
EmergingHotSpotAnalysis 示例 1(Python 窗口)
下面的 Python 窗口脚本演示了如何使用 EmergingHotSpotAnalysis 工具。
import arcpy
arcpy.env.workspace = r"C:\STPM"
arcpy.EmergingHotSpotAnalysis_stpm("Homicides.nc", "COUNT", "EHS_Homicides.shp", "5 Miles", 2, "#")
EmergingHotSpotAnalysis 示例 2(独立 Python 脚本)
以下独立 Python 脚本演示了如何使用 EmergingHotSpotAnalysis 工具。
# Create space-time cube of aggregated 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 of aggregated 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")
# Emerging Hot Spot Analysis of homicide incident cube using 5 Miles neighborhood
# distance and 2 neighborhood time step to detect hot spots
# Process: Emerging Hot Spot Analysis
cube = arcpy.EmergingHotSpotAnalysis_stpm("Homicides.nc", "COUNT", "EHS_Homicides.shp",
"5 Miles", 2, "bounding.shp")
except arcpy.ExecuteError:
# If any error occurred when running the tool, print the messages
print(arcpy.GetMessages())
环境
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是