描述
可基于邻域、时间范围或两者来标识两个要素类之间的匹配。
使用方法
输出要素类将包含满足匹配条件的输入要素类中的所有要素。任何输入要素类中的单个要素都可以匹配多个其他要素。在这种情况下,可根据需要多次将要素复制到输出以保留唯一要素匹配。
如果在任何输入要素中均未找到任何匹配,则将创建空的输出要素类。
输入要素和字段将传递到输出要素类。
如果针对输出匹配类型参数指定了空间和时间或仅时间,则输入要素类必须包含日期字段。
以下字段将添加到输出中:
- MATCHID - 用于定义输出要素类的关系的标识符值。此字段可用于在输出要素类之间创建一对一关系。
- MATCHTYPE - 分配给每个要素的值,用于描述输入要素之间的匹配条件类型。
- B - 两个输入要素在相同时间范围内彼此接近,例如,电话 2 上的呼叫发生于电话 1 上的呼叫的 1000 英尺和 30 分钟内。即空间和时间匹配类型。
- S - 两个输入要素彼此接近,例如,电话 2 上的呼叫发生于电话 1 上的呼叫的 1000 英尺内,但不在 30 分钟时间范围内。即仅空间匹配类型。
- T - 两个输入要素位于时间范围内,例如,电话 2 上的呼叫发生于电话 1 上的呼叫的 30 分钟内,但不在 1000 英尺内。即仅时间匹配类型。
语法
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,...] | 用于指定要比较的匹配类型。
| 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 函数。
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 函数。
# 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: 是