Поиск сходства (Пространственная статистика)

Уровень лицензии:BasicStandardAdvanced

Краткая информация

Определяет, какой из объектов-кандидатов имеет наибольшее сходство или наибольшее различие с одним или несколькими входными объектами на основе их атрибутов.

Более подробно о том, как работает инструмент Поиск сходства

Рисунок

Поиск сходства

Использование

Синтаксис

SimilaritySearch_stats (Input_Features_To_Match, Candidate_Features, Output_Features, Collapse_Output_To_Points, Most_Or_Least_Similar, Match_Method, Number_Of_Results, Attributes_Of_Interest, {Fields_To_Append_To_Output})
ПараметрОбъяснениеТип данных
Input_Features_To_Match

Слой (или выборка слоя), содержащий объекты, которые вы хотите сопоставить; вы ищите другие объекты, которые выглядят так же, как эти. Если указано более одного объекта, сопоставление основывается на средних значениях атрибутов.

Подсказка: если Входные объекты для сопоставления (Input Features To Match) и Объекты-кандидаты (Candidate Features) берутся из одного набора данных,

  • Щелкните слой правой кнопкой мыши и выберите Выборка (Selection), затем Создать слой из выбранных объектов (Create Layer From Selected Features). Используйте новый слой, созданный для этого параметра.
  • Затем, снова щелкните слой правой кнопкой мыши и выберите Выборка (Selection), Переключить выборку (Switch Selection), чтобы получить слой, который будет использоваться для Объектов-кандидатов (Candidate Features).

Feature Layer
Candidate_Features

Слой (или выборка на слое), содержащий объекты-кандидаты. Инструмент будет искать среди этих кандидатов объекты с наибольшим сходством (или наибольшим различием) с Входными объектами для сопоставления (Input Features To Match).

Подсказка: если Входные объекты для сопоставления (Input Features To Match) и Объекты-кандидаты (Candidate Features) берутся из одного набора данных,

  • Щелкните слой правой кнопкой мыши и выберите Выборка (Selection), затем Создать слой из выбранных объектов (Create Layer From Selected Features). Используйте новый слой, созданный для этого параметра.
  • Затем, снова щелкните слой правой кнопкой мыши и выберите Выборка (Selection), Переключить выборку (Switch Selection), чтобы получить слой, который будет использоваться для этого параметра.

Feature Layer
Output_Features

Выходной класс объектов содержит запись для каждого из Входных объектов для сопоставления (Input Features To Match) и для всех найденных объектов.

Feature Class
Collapse_Output_To_Points

Укажите тип геометрии для Output_Features как точки или в соответствии с геометрией входных объектов (линии или полигоны). Эта опция доступна только если Input_Features_To_Match и Candidate_Features оба являются линейными или полигональными. Включение опции COLLAPSE на больших линейных или полигональных наборах данных повышает производительность.

  • NO_COLLAPSEВыходная геометрия соответствует линейной или полигональной геометрии входных объектов. Это значение используется по умолчанию.
  • COLLAPSEЛинейные и полигональные объекты будут представлены в виде центроидов (точек).
Boolean
Most_Or_Least_Similar

Выберите, нужны ли вам объекты с наибольшим или наименьшим сходством с Входными объектами для сопоставления (Input Features To Match).

  • MOST_SIMILARНаходит объекты с наибольшим сходством.
  • LEAST_SIMILARНаходит объекты с наименьшим сходством.
  • BOTHНаходит оба типа объектов, с наибольшим и с наименьшим сходством.
String
Match_Method

Выберите, будет ли сопоставление основываться на значениях, рангах или отношениях между косинусами.

  • ATTRIBUTE_VALUESСходство или различие будет основано на сумме квадратов разницы значений стандартизованных атрибутов для всех Атрибутов интереса (Attributes of Interest).
  • RANKED_ATTRIBUTE_VALUESСходство или различие будет основано на сумме квадратов разницы рангов для всех Атрибутов интереса (Attributes of Interest).
  • ATTRIBUTE_PROFILESСходство или различие будет вычислено как функция сходства по косинусу для всех Атрибутов интереса (Attributes of Interest).
String
Number_Of_Results

Число сопоставлений для поиска.

Подсказка: чтобы ранжировать сходство для всех Объектов-кандидатов (Candidate Features), можно ввести очень большое число (равное или большее, чем реальное число кандидатов).

Long
Attributes_Of_Interest
[field,...]

Список числовых атрибутов, отображающий критерии соответствия.

Field
Fields_To_Append_To_Output
[field,...]
(дополнительно)

Дополнительный список атрибутов для включения вместе с Выходными объектами (Output Features). Вам может потребоваться включить идентификатор имени, категорийное поле или поле даты, например. Эти поля не используются для определения сходства, они только включается в Выходные объекты (Output Features) для справки.

Field

Пример кода

SimilaritySearch, пример 1 (окно Python)

В следующем скрипте Python показано применение инструмента SimilaritySearch.

import arcpy
import arcpy.stats as SS
arcpy.env.workspace = r"C:\Analysis"
SS.SimilaritySearch ("Crime_selection", "AllCrime", "c:\\Analysis\\CrimeMatches", 
                     "NO_COLLAPSE", "MOST_SIMILAR", "ATTRIBUTE_VALUES", 4, 
                     "HEIGHT;WEIGHT;SEVERITY;DST2CHPSHP", "Name;WEAPON")
SimilaritySearch, пример 2 (автономный скрипт Python)

Следующий автономный скрипт Python демонстрирует, как использовать инструмент SimilaritySearch.

# Similarity Search of crime data in a metropolitan area

# Import system modules
import arcpy, os
import arcpy.stats as SS

# Set geoprocessor object property to overwrite existing output
arcpy.gp.overwriteOutput = True

try:
    # Set the current workspace (to avoid having to specify the full path to
    # the feature classes each time)
    arcpy.env.workspace = r"C:\Analysis"

    # Make a layer from the crime feature class
    arcpy.MakeFeatureLayer_management("AllCrime", "Crime_selection") 

    # Select the target crime to match
    # Process: Select By Attribute
    arcpy.SelectLayerByAttribute_management("Crime_selection","NEW_SELECTION",
                                            '"OBJECTID" = 1230043')

    # Use Similarity Search to find  to create groups based on different variables 
    # or analysis fields
    # Process: Group Similar Features  
    SS.SimilaritySearch("Crime_selection","AllCrime","CJMatches","NO_COLLAPSE",
                        "MOST_SIMILAR","ATTRIBUTE_VALUES",4,
                        "HEIGHT;WEIGHT;SEVERITY;DST2CHPSHP","Name;WEAPON")
    
except:
    # If an error occurred when running the tool, print out the error message.
    print arcpy.GetMessages()

Параметры среды

Связанные темы

Информация о лицензировании

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
5/10/2014