Доступно с лицензией Spatial Analyst.
Краткая информация
Выполняет Principal Component Analysis (PCA) на наборе каналов растра и создаёт один многоканальный растр в качестве выходных данных.
Более подробно о том, как работает инструмент Метод главных компонент
Использование
Значение, установленное для числа главных компонент, определяет количество каналов главных компонент на выходном многоканальном растре. Число не может быть больше, чем общее количество каналов растра на входных данных.
Каналы растра должны иметь общую область пересечения. При ее отсутствии возникнет ошибка и выходные данные созданы не будут.
Процентная дисперсия определяет количество собираемой каждым собственным числом дисперсии. Это может оказаться полезным при интерпретации результатов PCA. Если два собственных значения (каждый относящийся к каналам в выходном растре) собирает большинство дисперсии, будет приемлемо использовать этот поднабор каналов в последующем анализе, так как эти каналы смогут собрать большинство действий с исходным многоканальным набором данных.
При определении процентной дисперсии, каждое собственное число выполняет сбор, сумма собственных чисел указывается в следующей формуле: (собственное число * 100)/сумму. Первое собственное число (и соответствующий канал) собирает самую большую дисперсию; последующие собственные числа собирают дисперсию меньшего порядка. Суммарный процент дисперсии является последовательной суммой дисперсии, собранной каждый собственным значением.
Если входные данные представлены слоем, созданным на основании многоканального растра, содержащего более трёх каналов, операция будет выполняться для всех каналов, связанных с исходным набором данных, а не только для трёх каналов, которые загружены слоем (то есть, отображаются символами).
Существует несколько способов для указания поднабора каналов многоканального растра, которые нужно использовать в качестве входных данных инструмента.
- При использовании диалогового окна инструмента выберите многоканальный растр с помощью кнопки обзора , расположенной рядом с пунктом Каналы входного растра, откройте растр и выберите нужные каналы.
- Если многоканальный растр является слоем в Таблице содержания, можно использовать инструмент Создать растровый слой, чтобы создать новый многоканальный слой, содержащий только нужные каналы.
- Можно также создать новый набор данных, содержащий только нужные каналы, используя для этого инструмент Объединить каналы (Composite Bands), входными данными для которого будет являться полученный набор данных.
- В Python нужные каналы можно указать как список напрямую в параметре инструмента.
См. раздел Параметры среды анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
PrincipalComponents (in_raster_bands, {number_components}, {out_data_file})
Параметр | Объяснение | Тип данных |
in_raster_bands [in_raster_band,...] | Входные каналы растров. Они могут быть целочисленными или с плавающей точкой. | Raster Layer |
number_components (Дополнительный) | Число главных компонент. Число должно быть больше нуля и меньше или равно общему числу каналов растра во входных каналах растра. По умолчанию используется общее число каналов растра на входных данных. | Long |
out_data_file (Дополнительный) | Выходной ASCII-файл данных, в котором хранятся параметры главных компонент. Выходной файл выходных данных записывает матрицы корреляции и ковариации, наряду с собственными числами и векторами, а также процентной дисперсией, собираемой каждым характеристическим числом, и описанной суммарной дисперсией. Расширение выходного файла – .txt или .asc. | File |
Возвращаемое значение
Название | Объяснение | Тип данных |
out_multiband_raster | Выходной многоканальный набор растровых данных. Если значения во всех входных каналах целочисленные, выходной растр также будет целочисленным. Если в каком-либо из входных каналов содержатся данные с плавающей точкой, выходные данные также будут иметь этот тип. Если выходными данными является растр сетки ESRI, имя файла должно состоять не более, чем из 10 символов. | Raster |
Пример кода
Метод главных компонент. Пример 1 (окно Python)
В этом примере выполняется Principal Component Analysis (PCA) на входном многоканальном растре и создаются выходные данные многоканального растра.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outPrincipalComp = PrincipalComponents(["redlands"], 4,"pcdata.txt")
outPrincipalComp.save("C:/sapyexamples/output/outpc01")
Метод главных компонент. Пример 2 (автономный скрипт)
В этом примере выполняется Principal Component Analysis (PCA) на входном многоканальном растре и создаются выходные данные многоканального растра.
# Name: PrincipalComponents_Ex_02.py
# Description: Performs principal components analysis on a set of raster bands.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRasterBand1 = "redlands/redlandsc1"
inRasterBand2 = "redlands/redlandsc3"
numberComponents = 2
outDataFile = "C:/sapyexamples/output/pcdatafile.txt"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.checkOutExtension("Spatial")
# Execute PrincipalComponents
outPrincipalComp = PrincipalComponents([inRasterBand1, inRasterBand2], 2,
outDataFile)
# Save the output
outPrincipalComp.save("C:/sapyexamples/output/outpc01")
Параметры среды
- Автоподтверждение (Auto Commit)
- Размер ячейки (Cell size)
- Сжатие (Compression)
- Текущая рабочая область (Current Workspace)
- Экстент (Extent)
- Географические преобразования (Geographic Transformations)
- Маска (Mask)
- Выходное ключевое слово CONFIG (Output CONFIG Keyword)
- Выходная система координат (Output Coordinate System)
- Статистика растра (Raster Statistics)
- Временная рабочая область (Scratch Workspace)
- Растр привязки (Snap Raster)
- Размер листа (Tile Size)
Информация о лицензиях
- ArcGIS Desktop Basic: Требует Spatial Analyst
- ArcGIS Desktop Standard: Требует Spatial Analyst
- ArcGIS Desktop Advanced: Требует Spatial Analyst