主成分分析 (空间分析)

摘要

对一组栅格波段执行主成分分析 (PCA) 并生成单波段栅格作为输出。

了解有关“主成分分析”工作原理的详细信息

用法

语法

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 Grid 栅格,名称必须少于 10 个字符。

Raster

代码示例

主成分分析 (PrincipalComponents) 示例 1(Python 窗口)

此例对输入多波段栅格执行主成分分析 (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")
主成分分析 (PrincipalComponents) 示例 2(独立脚本)

此例对输入多波段栅格执行主成分分析 (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")

环境

相关主题

许可信息

ArcView: 需要 Spatial Analyst
ArcEditor: 需要 Spatial Analyst
ArcInfo: 需要 Spatial Analyst

7/10/2012