Сводка
Создает смежные зоны в области изучения в однородные регионы на основании заданного критерия.
Вы можете построить зоны, содержащие одинаковое число объектов, совпадающие по набору атрибутивных значений, или и то и другое. Есть также опции для выбора зон приблизительно одинаковой площади, настолько компактных, насколько возможно, с сохранением суммарной статистики остальных переменных.
Более подробно о том, как работает инструмент Построить сбалансированные зоны
Использование
Для создания зон необходимо выбрать одну из опций Целевой атрибут, Число зон и целевой атрибут или Число зон в параметре Метод создания зон. Если выбран Целевой атрибут, инструмент создает зоны на основании целевых значений одной или нескольких указанных переменных. Опция Число зон и целевой атрибут вычисляет сбалансированные значения атрибутов исходя из указанного числа зон. Также можно создать зоны на базе числа объектов, используя опцию Заданное число зон.
Входными данными инструмента могут быть точки или полигоны.
Если несколько переменных указаны в параметре Критерий построения зон, также можно воспользоваться опцией указания веса. Веса применяются пропорционально значению, указанному в поле весов.
Инструмент поддерживает параллельную обработку для создания поколений для алгоритма и использует 50% доступной мощности процессора по умолчанию. Количество используемых процессоров можно изменить при помощи параметра среды Коэффициент параллельной обработки.
Лицензия:
Параметр Расстояние согласования (distance_to_consider) доступен только с лицензией Desktop Advanced.Синтаксис
arcpy.stats.BuildBalancedZones(in_features, output_features, zone_creation_method, {number_of_zones}, {zone_building_criteria_target}, {zone_building_criteria}, {spatial_constraints}, {weights_matrix_file}, {zone_characteristics}, {attribute_to_consider}, {distance_to_consider}, {categorial_variable}, {proportion_method}, {population_size}, {number_generations}, {mutation_factor}, {output_convergence_table})
Parameter | Объяснение | Тип данных |
in_features | Класс пространственных объектов или векторный слой, который будет агрегирован в зоны. | Feature Layer |
output_features | Новый выходной класс объектов с информацией, какие объекты агрегированы в каждую из зон. Класс объектов отображается символами, присвоенными по полю ZONE_ID, кроме того к объектам добавлены поля со значениями каждого указанного критерия. | Feature Class |
zone_creation_method | Определяет метод, который будет использован при формировании каждой зоны. Зоны увеличиваются вплоть до достижения всех указанных критериев.
| String |
number_of_zones (Дополнительный) | Число зон, которое должно быть создано. | Long |
zone_building_criteria_target [[variable, sum, weight],...] (Дополнительный) | Указывает целевые переменные, их значения, и, дополнительно, веса. Вес по умолчанию установлен на 1, и это значение делится поровну между всеми переменными, если не указано иное. | Value Table |
zone_building_criteria [[variable, weight],...] (Дополнительный) | Указывает целевые переменные, и, дополнительно, веса. Вес по умолчанию установлен на 1, и это значение делится поровну между всеми переменными, если не указано иное. | Value Table |
spatial_constraints (Дополнительный) | Указывает, как определяются соседние объекты при формировании зон. Зоны могут увеличиваться только за счет новых объектов, которые являются соседями по крайней мере одного из объектов, уже входящего в зону. Если входные объекты являются полигонами, то пространственным ограничением по умолчанию будет Углы соприкасающихся ребер. Если входные объекты являются точками, то пространственным ограничением по умолчанию будет Сокращенная триангуляция Делоне.
| String |
weights_matrix_file (Дополнительный) | Путь к файлу, который содержит веса, определяющие пространственные и, возможно, временные отношения между объектами. | File |
zone_characteristics [zone_characteristics,...] (Дополнительный) | Определяет желаемые характеристики создаваемых зон.
| String |
attribute_to_consider [[variable, function],...] (Дополнительный) | Определяет атрибуты и статистику для согласования финальной выборки зон. Вы можете выбрать, по какому показателю рассчитывать однородность атрибутов - по сумме, среднему, медиане или дисперсии. Например, если вы создаете зоны на основе числа домохозяйств, и хотите сбалансировать средний общий доход в каждой зоне, будет использоваться решение с максимальным сходством средних значений дохода по зонам. | Value Table |
distance_to_consider [distance_to_consider,...] (Дополнительный) | Класс объектов, который будет использоваться для выравнивания общего расстояния на зону. Расстояние вычисляется от каждого входного объекта до ближайшего объекта в соответствии с установками в параметре. Это расстояние используется как дополнительный атрибут при выборе окончательного решения по зонированию. Например, можно разграничить районы полицейского патрулирования с приблизительно одинаковым расстоянием до ближайшего полицейского участка. Лицензия:Этот дополнительный параметр не доступен с лицензией Desktop Basic или Desktop Standard. | Feature Layer |
categorial_variable (Дополнительный) | Категорийная переменная для согласования пропорций зон. | Field |
proportion_method (Дополнительный) | Указывает тип пропорции, который будет сохранен на основе выбранной категорийной переменной.
| String |
population_size (Дополнительный) | Число произвольно создаваемых источников. Для больших наборов данных увеличение этого значения увеличит пространство поиска и вероятность принятия оптимального решения. По умолчанию используется 100. | Long |
number_generations (Дополнительный) | Число поколений процесса поиска зон. Для больших наборов данных рекомендуется увеличение этого значения, что поможет в поиске оптимального решения. Значение по умолчанию – 50 итераций. | Long |
mutation_factor (Дополнительный) | Вероятность того, что значения отдельных источников мутируют в новый набор источников. Мутации увеличивают пространство поиска, добавляя вариабельность в возможные решения в каждом поколении и допуская быструю конвергенцию к оптимальному решению. Значение по умолчанию равно 0,1. | Double |
output_convergence_table (Дополнительный) | Если указано, будет создана таблица, содержащая общую оценку жизнеспособности оптимального решения в каждом поколении, а также оценку жизнеспособности отдельных ограничений зон. | Table |
Пример кода
В следующем скрипте окна Python показано, как используется инструмент BuildBalancedZones.
import arcpy
arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.BuildBalancedZones("US_Counties", "out_features",
"NUMBER_OF_ZONES", 5, None, None, "TRIMMED_DELAUNAY_TRIANGULATION",
None, None, None, None, None, '', 100, 50, 0.1)
Следующий автономный Python скрипт демонстрирует, как использовать инструмент BuildBalancedZones.
# Aggregate states into zones that have a target population of approximately
# 250,000 people. Make the zones of equal area and compact.
import arcpy
# Set the current workspace (to avoid having to specify the full path to
# the feature classes each time)
arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.BuildBalancedZones("states", "out_zones", "ATTRIBUTE_TARGET",
None, "POPULATION 250000 1", None, "TRIMMED_DELAUNAY_TRIANGULATION",
None, "EQUAL_AREA;COMPACTNESS", None, None, None, '', 100, 50, 0.1)
Environments
Информация о лицензиях
- Basic: Ограничено
- Standard: Ограничено
- Advanced: Да