Извлечь по образцу (Spatial Analyst)

Доступно с лицензией Spatial Analyst.

Доступно с лицензией Image Analyst.

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

Создает таблицу или класс точечных объектов, содержащую(-ий) значения ячеек растра или набора растров, для конкретных местоположений. Местоположения определяются ячейками растра, точками, полилиниями или полигонами.

Более подробно о том, как работает инструмент Извлечь по образцу

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

  • Значения ячеек будут извлекаться из всех Входных растров(in_rasters в Python) в каждом местоположении. Будет создана таблица или класс точечных объектов со значениями ячеек в полях для каждого входного растра.

  • Дополнительные атрибуты из таблицы входного растра, если есть, не будут включены в входную таблицу.

  • В качестве Входных растров могут быть заданы любые комбинации растров (одноканальных или многоканальных). Структура выходной таблицы автоматически изменяется, если входные растры являются многомерными.

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

  • В качестве значений параметра Входное местоположение растра или объектов (in_location_data в Python) можно использовать следующие:

    • Растр – Ячейки с допустимыми значениями (не NoData) будут использоваться для извлечения значений ячеек изо всех входных растров, а центр этой ячейки будет использован для местоположений точек.
    • Точка – Значения будут отбираться в каждом местоположении точек.
    • Полилиния или полигон — среднее значение всех ячеек, пересекающих каждую полилинию или полигон, будет вычисляться, если входными данными является двумерный растр или несколько растров. Можно указать другие типы статистики, если входным является многомерный растр, который обрабатывается как многомерный.

  • Местоположениям, которые извлекают значения из ячеек NoData во входном растре, в выходной таблице будет присвоено значение <null>. Для шейп-файлов, поскольку они не поддерживают значения null, значения NoData в таблице содержат значения -9999.

  • Входные растры отбираются в их собственной пространственной привязке и разрешении. Если имеется несколько входных растров с различными пространственными привязками, входные местоположения сначала проецируются в систему координат каждого отдельного растра. А затем извлекаются значения. Это означает, что, хотя входные растры не будут учитывать никакие настройки среды анализа, ко входным местоположениям будут применены соответствующие настройки.

  • По умолчанию пространственная привязка координат x,y в параметре Выходная таблица или класс объектов (out_table в Python) будет такой же, как у значений параметра Входное местоположение растра или объектов, если в параметре среды Выходная система координат не будет выбрана другая. Если пространственная привязка входных местоположений неизвестна, пространственная привязка координат x,y также останется неизвестной.

    Пространственная привязка координат x,y сообщается в конце работы инструмента, в виде сообщения геообработки.

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

  • Инструмент не сможет работать с мультиточечными объектами. Для выполнения анализа с мультиточечными объектами, сначала конвертируйте их в отдельные точечные объекты, перед тем, как использовать их в инструменте извлечения. Для получения подробной информации см. Обработка мультиточечных данных.

  • Если для параметра Методы изменения разрешения задано Ближайшее (resampling_type = "NEAREST" в Python), тип поля в выходной таблице будет соответствовать типу растра. Если используется опция пересчета Билинейная или Кубическая, тип поля всегда будет иметь плавающую точку, чтобы поддерживать точность интерполированных значений.

  • В выходную таблицу будет добавлено поле для хранения значений, указанных в параметре Поле уникального идентификатора (unique_id_field в Python). По умолчанию имя поля совпадает с именем входного набора данных местоположения. Рекомендуется использовать поле, содержащее уникальные значения, как идентификатор каждого местоположения для последующего анализа.

  • Если параметр Обработать как многомерный отключен (process_as_multidimensional = "CURRENT_SLICE" в Python), будут применяться следующие условия:

    • Если входные данные представляют собой многомерный растр, будет выбран только текущий срез.
    • Если входные данные представляют собой растр с несколькими переменными, будет выбрана только текущая переменная.

  • Если параметр Обработать как многомерный отмечен (process_as_multidimensional = "ALL_SLICES" в Python), будут применяться следующие условия:

    • Если входные данные представляют собой многомерный растр, будут выбраны все срезы.
    • Если входные данные представляют собой растр с несколькими переменными, будут выбраны все переменные.
    • Если входные данные представляют собой многомерный растр с несколькими переменными, будут выбраны все срезы всех переменных. У всех переменных должны быть одинаковые измерения.

  • Если параметр Обработать как многомерный отмечен (process_as_multidimensional = "ALL_SLICES" в Python), будет применен один из следующих сценариев:

    • Параметр Информация о получении данных местоположения (acquisition_definition в Python) будет использоваться для указания поднабора входного многомерного растра, используемого для выборки.

      • При указании измерения, начального значения и конечного значения обрабатываются срезы в пределах начального и конечного значений. Конечное значение по умолчанию – это максимальное значение измерения. Для измерения времени укажите значение в стандартном формате. Для других измерений укажите значение в той же единице измерения, что и для входного растра.

      • Когда задано измерение, начальное поле и конечное поле (начальное поле и конечное поле взяты из данных местоположения), значения из этих полей используются для указания подмножества входного растра при выборке значений в этом местоположении.

      • Значения Относительное значение или дней до и Относительное значение или дней после можно использовать для указания поднабора относительно начального значения, в котором значение до указывает начало поднабора, а значение после – конец поднабора. Значения времени задаются в днях, а другие значения измерений задаются в той же единице измерения, что и значения входного растра.

    • Параметр Тип статистики (statistics_typeв Python) агрегирует значения параметра Входной растр, заданного поднабором в параметре Информация о получении данных местоположения.

    • Если параметр Компоновка столбца выключен (layout = "ROW_WISE" в Python), извлеченные значения сохраняются в поле с тем же именем, что и переменная. Создаются дополнительные поля для хранения значений не пространственных измерений, с тем же именем, что и измерение.

    • Если параметр Компоновка столбца выключен (layout = "COLUMN_WISE" в Python), извлеченные значения сохраняются в полях с именами, соответствующими соглашению <variable_name>_<dimension_name>_<dimension_value>. Обратите внимание, что параметр Компоновка столбца поддерживается, когда многомерный растр содержит только одну переменную, переменная имеет только одно измерение, а каждый срез имеет один канал. В противном случае будет сгенерировано сообщение об ошибке.

    • Если в многомерном растре есть несколько каналов, для каждого из них создается дополнительное поле, в котором хранится значение, извлеченное из этого канала.

    • Местоположениям, извлекающим значения из ячеек NoData, будет присвоено значение NoData из входного многомерного растра.

  • Многомерный растр может быть растровым слоем netCDF, многомерным растровым слоем, набором многомерных данных мозаики, многомерным CRF, сервисом многомерных изображений или файлом netCDF. Вы не можете перейти к файлу netCDF в диалоговом окне инструмента, но можете указать путь к файлу.

  • Если параметр Построение класса объектов отмечен (generate_feature_class = "FEATURE_CLASS" в Python), выходные данные представляют собой класс точечных объектов со значениями выборки в таблице атрибутов. Ниже приведены возможные типы местоположений с описанием того, как будут отбираться значения:

    • Растр—Точки будут создаваться с использованием местоположения центра ячейки.
    • Точка—Точка будет создана в каждом из местоположений точек.
    • Полилиния или полигон—Точка будет создана в каждом центроиде полигона или полилинии.

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

  • Параметр среды Коэффициент параллельной обработки поддерживается, только когда параметр Обработать как многомерный включен.

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

  • См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входные растры

Растры, значения которых будут отобраны в качестве образцов на основании исходных данных местоположений.

Параметр Обработать как многомерный доступен только в том случае, если входные данные представляют собой один многомерный растр.

Raster Layer
Входной растр или объекты местоположений

Данные, определяющие места, где будет получена выборка.

Входными данными может быть растр или класс пространственных объектов.

Raster Layer; Feature Layer
Выходная таблица или класс объектов

Выходная таблица или класс объектов, содержащие выборочные значения ячеек.

Выходной формат определяется выходным местоположением и путем. По умолчанию выходными данными будет таблица базы геоданных или класс объектов базы геоданных в рабочей области базы геоданных, таблица dBASE или класс объектов шейп-файла в рабочей области-папке.

Тип выходных данных для создания таблицы или класса объектов определяется параметром Построение класса объектов.

Table; Point feature class
Методы изменения разрешения
(Дополнительный)

Алгоритм пересчета, который будет использоваться для выборки растра, определяющий, как значения будут получены из растра.

  • Ближайшая окрестностьБудет использовано присвоение значений по методу ближайшего соседа. Используется по умолчанию.
  • БилинейныйБудет применена билинейная интерполяция.
  • Кубическая сверткаБудет применена кубическая свертка.
String
Поле уникального ID
(Дополнительный)

Поле, содержащее отличное значение для каждого местоположения или объекта во входном растре или среди объектов местоположений.

Field
Обработать как многомерный
(Дополнительный)

Задает способ обработки входных растров.

Этот параметр доступен только в том случае, если входные данные представляют собой один многомерный растр.

  • Не отмечено – образцы будут взяты из текущего среза многомерного растра. Используется по умолчанию.
  • Отмечено – образцы будут обработаны для всех измерений (например, времени и глубины) многомерного растра.
Boolean
Информация о получении данных местоположения
(Дополнительный)

Определяет время, глубину или другие сведения, связанные с пространственными объектами.

Поддерживаются только следующие комбинации:

  • Измерение + Поле начала или значение
  • Измерение + Поле начала или значение + Поле окончания или значение
  • Измерение + Поле начала или значение + Относительное значение или дней до + Относительное значение или дней после

Относительное значение или дней до и Относительное значение или дней после поддерживают только неотрицательные значения.

Статистика будет рассчитываться с помощью параметра Тип статистики для переменных в пределах этого диапазона измерений.

Value Table
Тип статистики
(Дополнительный)

Задает вычисляемый тип статистики.

  • МинимумБудет вычислено минимальное значение в заданном диапазоне.
  • МаксимумБудет вычислено максимальное значение в заданном диапазоне.
  • МедианаБудет вычислено медианное значение в заданном диапазоне.
  • СреднееБудет вычислено среднее значение в заданном диапазоне.
  • СуммаБудет вычислено общее значение переменных в заданном диапазоне.
  • БольшинствоБудет вычислено значение, которое встречается чаще всего.
  • МеньшинствоБудет вычислено значение, которое встречается реже всего.
  • Среднеквадратическое отклонениеБудет вычислено среднеквадратичное отклонение.
  • ПроцентильБудет вычислен заданный процентиль в пределах заданного диапазона.
String
Значение процентиля
(Дополнительный)

Это значение может варьироваться от 0 до 100. Значение по умолчанию равно 90.

Double
Поле или значение буферного расстояния
(Дополнительный)

Расстояние вокруг объектов местоположений. Буферное расстояние указывается в линейной единице пространственной привязки объекта местоположения. Если объект использует географическую привязку, такими единицами будут градусы.

Статистика будет рассчитываться в пределах этой буферной области.

Double; Field
Компоновка по столбцам
(Дополнительный)

Устанавливает, будут ли значения выборки отображаться в строках или столбцах выходной таблицы.

  • Не отмечено - значения выборки будут отображаться в отдельных строках выходной таблицы. Используется по умолчанию.
  • Отмечено - Значения выборки будут отображаться в отдельных столбцах выходной таблицы. Эта опция действительна, только когда входной многомерный растр содержит одну переменную и одно измерение, и каждый срез является одноканальным растром.
Boolean
Построение класса объектов
(Дополнительный)

Устанавливает, будет ли создан класс точечных объектов со значениями выборки в таблице атрибутов или будет построена таблица со значениями выборки.

  • Не отмечено – будет создана таблица со значениями выборки. Используется по умолчанию.
  • Отмечено - будет создан класс точечных объектов со значениями выборки в таблице атрибутов.
Boolean

Sample(in_rasters, in_location_data, out_table, {resampling_type}, {unique_id_field}, {process_as_multidimensional}, {acquisition_definition}, {statistics_type}, {percentile_value}, {buffer_distance}, {layout}, {generate_feature_class})
ИмяОписаниеТип данных
in_rasters
[in_raster,...]

Растры, значения которых будут отобраны в качестве образцов на основании исходных данных местоположений.

Параметр process_as_multidimensional поддерживается только в том случае, если входные данные представляют собой один многомерный растр.

Raster Layer
in_location_data

Данные, определяющие места, где будет получена выборка.

Входными данными может быть растр или класс пространственных объектов.

Raster Layer; Feature Layer
out_table

Выходная таблица или класс объектов, содержащие выборочные значения ячеек.

Выходной формат определяется выходным местоположением и путем. По умолчанию выходными данными будет таблица базы геоданных или класс объектов базы геоданных в рабочей области базы геоданных, таблица dBASE или класс объектов шейп-файла в рабочей области-папке.

Тип выходных данных для создания таблицы или класса объектов определяется параметром generate_feature_class.

Table; Point feature class
resampling_type
(Дополнительный)

Алгоритм пересчета, который будет использоваться для выборки растра, определяющий, как значения будут получены из растра.

  • NEARESTБудет использовано присвоение значений по методу ближайшего соседа. Используется по умолчанию.
  • BILINEARБудет применена билинейная интерполяция.
  • CUBICБудет применена кубическая свертка.
String
unique_id_field
(Дополнительный)

Поле, содержащее отличное значение для каждого местоположения или объекта во входном растре или среди объектов местоположений.

Field
process_as_multidimensional
(Дополнительный)

Задает способ обработки входных растров.

Этот параметр доступен только в том случае, если входные данные представляют собой один многомерный растр.

  • ALL_SLICESОбразцы будут обработаны для всех измерений (например, времени и глубины) многомерного растра.
  • CURRENT_SLICEОбразцы будут взяты из текущего среза многомерного растра. Используется по умолчанию.
Boolean
acquisition_definition
[acquisition_definition,...]
(Дополнительный)

Определяет время, глубину или другие сведения, связанные с пространственными объектами.

Поддерживаются только следующие комбинации:

  • Измерение + Поле начала или значение
  • Измерение + Поле начала или значение + Поле окончания или значение
  • Измерение + Поле начала или значение + Относительное значение или дней до + Относительное значение или дней после

Relative value or days before и Relative value or days after поддерживают только неотрицательные значения.

Статистика будет рассчитываться с помощью параметра statistics_type для переменных в пределах этого диапазона измерений.

Value Table
statistics_type
(Дополнительный)

Задает вычисляемый тип статистики.

  • MINIMUMБудет вычислено минимальное значение в заданном диапазоне.
  • MAXIMUMБудет вычислено максимальное значение в заданном диапазоне.
  • MEDIANБудет вычислено медианное значение в заданном диапазоне.
  • MEANБудет вычислено среднее значение в заданном диапазоне.
  • SUMБудет вычислено общее значение переменных в заданном диапазоне.
  • MAJORITYБудет вычислено значение, которое встречается чаще всего.
  • MINORITYБудет вычислено значение, которое встречается реже всего.
  • STDБудет вычислено среднеквадратичное отклонение.
  • PERCENTILEБудет вычислен заданный процентиль в пределах заданного диапазона.
String
percentile_value
(Дополнительный)

Процентиль для вычисления, если параметр Тип статистики задан как Процентиль.

Процентиль для вычисления, если параметр statistics_type задан как PERCENTILE.

Это значение может варьироваться от 0 до 100. Значение по умолчанию равно 90.

Double
buffer_distance
(Дополнительный)

Расстояние вокруг объектов местоположений. Буферное расстояние указывается в линейной единице пространственной привязки объекта местоположения. Если объект использует географическую привязку, такими единицами будут градусы.

Статистика будет рассчитываться в пределах этой буферной области.

Double; Field
layout
(Дополнительный)

Устанавливает, будут ли значения выборки отображаться в строках или столбцах выходной таблицы.

  • ROW_WISEЗначения выборки будут отображаться в отдельных строках выходной таблицы. Используется по умолчанию.
  • COLUMN_WISEЗначения выборки будут отображаться в отдельных столбцах выходной таблицы. Эта опция действительна, только когда входной многомерный растр содержит одну переменную и одно измерение, и каждый срез является одноканальным растром.
Boolean
generate_feature_class
(Дополнительный)

Устанавливает, будет ли создан класс точечных объектов со значениями выборки в таблице атрибутов или будет построена таблица со значениями выборки.

  • TABLEБудет создана таблица со значениями выборки. Используется по умолчанию.
  • FEATURE_CLASSБудет создан класс точечных объектов со значениями выборки в таблице атрибутов.
Boolean

Пример кода

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

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

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
Sample(["elevation", "costraster"], "observers.shp",
       "c:/sapyexamples/output/samptable.dbf")
Sample, пример 2 (автономный скрипт)

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

# Name: Sample_Ex_02.py
# Description: Creates a feature class that shows the values of cells from 
#              rasters, for defined locations. 
#              The locations are defined by a set of points.
#              Sampling method is Bilinear.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set the analysis environments
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRasters = ["elevation",
             "costraster"]
locations = "observers.shp"
outFeatureClass = "c:/sapyexamples/output/samptable02.shp"
sampMethod = "BILINEAR"
generate_feature_class = "FEATURE_CLASS"

# Execute Sample
Sample(inRasters, locations, outFeatureClass, sampMethod, "", "", "", "", "", "", "", generate_feature_class)
Sample, пример 3 (автономный скрипт)

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

# Name: Sample_Ex_03.py
# Description: Creates a table that shows the temperature values from 
#              a multidimensional raster, for defined locations. 
#              Each temperature has a unique OBSERVATION_ID
#              Sampling method is Bilinear
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set the analysis environments
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRasters = "temperature_1990_2019.nc"
locations = "observers.shp"
outTable = "C:/sapyexamples/output/samptable_03.dbf"
sampMethod = "BILINEAR"
uniqueIDField = "OBSERVATION_ID"
process_as_multidimensional = True

# Execute Sample
# the temperature value at each slice in temperature_1990_2019.nc will be extracted for each point
Sample(inRasters, locations, outTable, sampMethod, uniqueIDField, process_as_multidimensional)
Sample, пример 4 (автономный скрипт)

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

# Name: Sample_Ex_04.py
# Description: Creates a table that shows, for each polygon, the maximum temperature value within the period [1999-01-01T00:00:00 , 2019-01-01-T00:00:00]
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRasters = "temperature_1990_2019.nc"
locations = "observers_polygons.shp"
outTable = "C:/sapyexamples/output/samptable_04.dbf"
sampMethod = "BILINEAR"
uniqueIDField = "OBSERVATIONID"
process_as_multidimensional = True
# StdTime in acquisition_definition is the name of the dimension in inRasters that are related with time
# 1999-01-01T00:00:00 in acquisition_definition is the start time of the period
# 2019-01-01-T00:00:00 in acquisition_definition is the end time of the period
acquisition_definition = "StdTime 1999-01-01T00:00:00 2019-01-01-T00:00:00"
statistic_method = "MAXIMUM"

# Execute Sample
# for each polygon in locations, the maximum temperature value within the period [1999-01-01T00:00:00 , 2019-01-01-T00:00:00] will be extracted
Sample(inRasters, locations, outTable, sampMethod, uniqueIDField, process_as_multidimensional, acquisition_definition, statistic_method)

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

  • Basic: Обязательно Spatial Analyst или Image Analyst
  • Standard: Обязательно Spatial Analyst или Image Analyst
  • Advanced: Обязательно Spatial Analyst или Image Analyst

Связанные разделы