Сортировать (Sort) (Управление данными)
Резюме
Данный инструмент изменяет порядок записей в классе объектов или таблице по возрастанию или убыванию на основе значений одного или нескольких полей. Результат переупорядочивания записывается в новый набор данных.
Более подробно о том, как работает инструмент Сортировать (Sort)
Рисунок
Использование
-
Классы пространственных объектов могут быть пространственно переориентированы, или сортированы. Поле геометрии (Shape) должно использоваться как поле сортировки для пространственной сортировки. Существует несколько методов пространственной сортировки, которые организуют пространственные объекты по-разному на основе их местоположений.
-
База геоданных и классы пространственных объектов SDE, шейп-файлы, векторные слои, таблицы и представления таблицы являются корректными входными данными. Отдельные компоненты наборов данных CAD и SDC также являются корректными входными данными.
-
Если выбраны какие-либо из входных записей, только поднабор выбранных записей сортируется и записывается в выходные данные.
-
Если задано более одного поля в качестве поля сортировки, строки сначала будут отсортированы по первому полю, и в таком порядке - по второму полю, и т.д.
-
Полигональные объекты могут сортироваться по их площади с помощью поля Shape_Area класса пространственных объектов базы геоданных. Похожим образом могут сортироваться полилинейные объекты по их длине с помощью поля Shape_Length. Чтобы отсортировать полигональные объекты в шейп-файле, добавьте новое поле, вычислите площадь нового поля с помощью инструмента Вычислить поле (Calculate Field) и запустите инструмент Сортировать (Sort) с помощью этого нового поля.
Для параметра Поля (Field(s)) сортировка по полю Shape или нескольким полям доступна только при наличии лицензии уровня Advanced. Сортировка по одному любому полю атрибута (за исключением поля Shape) доступна на всех уровнях лицензии.
Синтаксис
Параметр | Объяснение | Тип данных |
in_dataset |
Входные наборы данных, порядок записей которых будет изменен на основе значений поля в полях сортировки. | Table View |
out_dataset |
Выходной класс объектов или таблица. | Feature Class;Table |
sort_field [[Sort Field, Direction],...] |
Устанавливает поля, значения которых будут использоваться для изменения порядка входных записей, а также направление, в котором будет отсортированы записи.
| Value Table |
spatial_sort_method (дополнительно) |
Указывает, как объекты пространственно сортируются. Метод сортировки доступен, только если выбрано поле 'Shape' как одно из полей сортировки.
| String |
Пример кода
На следующем скрипте окна Python демонстрируется, как использовать инструмент Сортировать (Sort) для установления порядка пространственных объектов по значениям поля.
import arcpy
from arcpy import env
env.workspace = "C:/data/city.gdb"
arcpy.Sort_management("crime", "crime_Sort", [["DATE_REP", "ASCENDING"]])
На следующем скрипте Python демонстрируется, как использовать инструмент Сортировать (Sort) в автономном скрипте.
# Name: Sort_example2.py
# Description: Sorts wells by location and well yield.
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
try:
# Set workspace environment
env.workspace = "C:/data/newfoundland.gdb"
# set local variables
in_dataset = "wells"
out_dataset = "wells_Sort"
# Order features first by location (Shape) and then by WELL_YIELD
sort_fields = [["Shape", "ASCENDING"], ["WELL_YIELD", "DESCENDING"]]
# Use Peano algorithm
sort_method = "PEANO"
# execute the function
arcpy.Sort_management(in_dataset, out_dataset, sort_fields, sort_method)
print arcpy.GetMessages()
except arcpy.ExecuteError:
# Print error messages
print arcpy.GetMessages(2)
except Exception as ex:
print ex.args[0]