查找时空匹配 (犯罪分析和安全)

摘要

可基于邻域、时间范围或两者来标识两个要素类之间的匹配。

使用情况

  • 输出要素类将包含满足匹配条件的输入要素类中的所有要素。任何输入要素类中的单个要素都可以匹配多个其他要素。在这种情况下,可根据需要多次将要素复制到输出以保留唯一要素匹配。

  • 如果在任何输入要素中均未找到任何匹配,则将创建空的输出要素类。

  • 输入要素和字段将传递到输出要素类。

  • 如果针对输出匹配类型参数指定了空间和时间仅时间,则输入要素类必须包含日期字段。

  • 以下字段将添加到输出中:

    • MATCHID - 用于定义输出要素类的关系的标识符值。此字段可用于在输出要素类之间创建一对一关系。
    • MATCHTYPE - 分配给每个要素的值,用于描述输入要素之间的匹配条件类型。
      • B - 两个输入要素在相同时间范围内彼此接近,例如,电话 2 上的呼叫发生于电话 1 上的呼叫的 1000 英尺和 30 分钟内。即空间和时间匹配类型。
      • S - 两个输入要素彼此接近,例如,电话 2 上的呼叫发生于电话 1 上的呼叫的 1000 英尺内,但不在 30 分钟时间范围内。即仅空间匹配类型。
      • T - 两个输入要素位于时间范围内,例如,电话 2 上的呼叫发生于电话 1 上的呼叫的 30 分钟内,但不在 1000 英尺内。即仅时间匹配类型。

参数

标注说明数据类型
输入主要要素

主要输入要素类。

Feature Layer
输入比较要素

比较输入要素类。

Feature Layer
输出匹配的主要要素

输出要素类,其中包含出现输出匹配类型的输入主要要素中的要素。

Feature Class
输出匹配的比较要素

输出要素类,其中包含出现输出匹配类型的输入比较要素中的要素。

Feature Class
输出匹配类型

用于指定要比较的匹配类型。

  • 空间和时间将对基于时间和空间搜索半径中定义的时间范围和邻域的匹配进行比较,例如 25 米和 10 分钟。
  • 仅空间将对仅基于空间搜索半径中定义的邻域的匹配进行比较,例如 25 米。
  • 仅时间将对仅基于时间搜索半径中定义的时间范围的匹配进行比较,例如 10 分钟。
String
搜索半径
(可选)

用于在输入要素类之间进行搜索的半径。

Linear Unit
时间搜索半径
(可选)

用于在输入要素类之间进行搜索的时间范围。

Time Unit
主要要素起始日期字段
(可选)

输入主要要素的主要起始日期和时间字段。

Field
比较要素起始日期字段
(可选)

输入比较要素的比较起始日期和时间字段。

Field
主要要素结束日期字段
(可选)

输入主要要素的主要结束日期和时间字段。如果指定,则将使用起始及结束日期和时间搜索半径定义的时间范围来搜索比较要素。可以将时间搜索半径设置为 0,以仅比较由要素的时间范围定义的时间。

Field
比较要素结束日期字段
(可选)

输入比较要素的比较结束日期和时间字段。如果指定,则将使用起始及结束日期和时间搜索半径定义的时间范围来评估与主要要素的关系。可以将时间搜索半径设置为 0,以仅比较由要素的时间范围定义的时间。

Field

arcpy.ca.FindSpaceTimeMatches(in_primary_features, in_comparison_features, out_primary_feature_class, out_comparison_feature_class, match_types, {search_radius}, {temporal_search_radius}, {primary_start_date_field}, {comparison_start_date_field}, {primary_end_date_field}, {comparison_end_date_field})
名称说明数据类型
in_primary_features

主要输入要素类。

Feature Layer
in_comparison_features

比较输入要素类。

Feature Layer
out_primary_feature_class

输出要素类,其中包含出现输出匹配类型的输入主要要素中的要素。

Feature Class
out_comparison_feature_class

输出要素类,其中包含出现输出匹配类型的输入比较要素中的要素。

Feature Class
match_types
[match_types,...]

用于指定要比较的匹配类型。

  • SPACE_AND_TIME将对基于时间和空间搜索半径中定义的时间范围和邻域的匹配进行比较,例如 25 米和 10 分钟。
  • SPACE_ONLY将对仅基于空间搜索半径中定义的邻域的匹配进行比较,例如 25 米。
  • TIME_ONLY将对仅基于时间搜索半径中定义的时间范围的匹配进行比较,例如 10 分钟。
String
search_radius
(可选)

用于在输入要素类之间进行搜索的半径。

Linear Unit
temporal_search_radius
(可选)

用于在输入要素类之间进行搜索的时间范围。

Time Unit
primary_start_date_field
(可选)

输入主要要素的主要起始日期和时间字段。

Field
comparison_start_date_field
(可选)

输入比较要素的比较起始日期和时间字段。

Field
primary_end_date_field
(可选)

输入主要要素的主要结束日期和时间字段。如果指定,则将使用起始及结束日期和时间搜索半径定义的时间范围来搜索比较要素。可以将时间搜索半径设置为 0,以仅比较由要素的时间范围定义的时间。

Field
comparison_end_date_field
(可选)

输入比较要素的比较结束日期和时间字段。如果指定,则将使用起始及结束日期和时间搜索半径定义的时间范围来评估与主要要素的关系。可以将时间搜索半径设置为 0,以仅比较由要素的时间范围定义的时间。

Field

代码示例

FindSpaceTimeMatches 示例 1(Python 窗口)

以下脚本演示了如何在即时模式下使用 FindSpaceTimeMatches 函数。

import arcpy
arcpy.env.workspace = r"C:/data/city_pd.gdb"
arcpy.ca.FindSpaceTimeMatches("CDR_Phone_1_Sites",
                            "CDR_Phone_2_Sites",
                            "CDR_Phone_1_Sites_Matches",
                            "CDR_Phone_2_Sites_Matches",
                            "SPACE_AND_TIME",
                            "1000 Meters",
                            "30 Minutes",
                            "starttime",
                            "starttime",
                            "endtime",
                            "endtime")
FindSpaceTimeMatches 示例 2(独立脚本)

以下脚本演示了如何在独立脚本中使用 FindSpaceTimeMatches 函数。


# Description: Use the FindSpaceTimeMatches function to create two feature 
#              classes with matches based on proximity, time extent, or both 
#              proximity and time extent.
# Import required modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\city_pd.gdb"
# Set local variables
in_primary_features = "CDR_Phone_1_Sites"
in_comparison_features = "CDR_Phone_2_Sites"
out_primary_feature_class = "CDR_Phone_1_Sites_Matches"
out_comparison_feature_class = "CDR_Phone_2_Sites_Matches"
match_types = ["SPACE_AND_TIME","SPACE_ONLY","TIME_ONLY"]
search_radius = "1000 Meters"
temporal_search_radius = "30 Minutes"
primary_start_date_field = "starttime"
comparison_start_date_field = "starttime"
primary_end_date_field = "endtime"
comparison_end_date_field = "endtime"
# Execute the FindSpaceTimeMatches tool
arcpy.ca.FindSpaceTimeMatches(in_primary_features,
                              in_comparison_features,
                              out_primary_feature_class,
                              out_comparison_feature_class,
                              match_types,
                              search_radius,
                              temporal_search_radius,
                              primary_start_date_field ,
                              comparison_start_date_field,
                              primary_end_date_field,
                              comparison_end_date_field)

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题