Disponible avec une licence Spatial Analyst.
Résumé
Effectue l'analyse en composantes principales (ACP) sur un jeu de canaux raster et génère un raster multicanal unique en sortie.
Utilisation
La valeur spécifiée pour le nombre de composantes principales détermine le nombre de canaux de composante principale dans le raster multicanal en sortie. Ce nombre ne doit pas être supérieur au nombre total de canaux raster en entrée.
Les canaux raster doivent avoir une intersection commune. En l'absence d'une telle intersection, une erreur survient et aucune sortie n'est créée.
Le pourcentage de variance identifie la proportion de la variance que chaque valeur propre capture. Cela facilite l'interprétation des résultats de l'analyse des composantes principales. Si quelques valeurs propres (chacune correspondant à des canaux dans le raster en sortie) capturent la plus grande partie de la variance, il peut être utile d'utiliser ce sous-ensemble de canaux dans une analyse ultérieure, car elles peuvent capturer la plupart des interactions dans le jeu de données multicanal d'origine.
Pour déterminer le pourcentage de variance capturé par chaque valeur propre, la somme des valeurs propres doit être saisie dans la formule suivante : (valeur propre * 100)/Somme. La première valeur propre (et le canal qui lui est associé) capture la variance la plus élevée et les valeurs propres suivantes capturent la variance inférieure de manière séquentielle. Le pourcentage de variance cumulé est une somme séquentielle de la variance que chaque valeur propre capture.
Si l'entrée est une couche créée à partir d'un raster multicanal comportant plus de trois canaux, l'opération prend en compte tous les canaux associés au jeu de données source, et non pas seulement les trois canaux qui ont été chargés (symbolisés) par la couche.
Vous pouvez employer plusieurs méthodes pour spécifier un sous-ensemble de canaux à partir d'un raster multicanal en vue de l'utiliser en entrée dans l'outil.
- Si vous utilisez la boîte de dialogue de l'outil, accédez au raster multicanal en cliquant sur le bouton en regard de Canaux raster en entrée, ouvrez le raster, puis sélectionnez les canaux souhaités.
- Si le raster multicanal est une couche dans la table des matières, vous pouvez utiliser l'outil Générer une couche raster pour créer une couche multicanal contenant uniquement les canaux souhaités.
- Vous pouvez également faire appel à l'option Canaux composites pour créer un jeu de données contenant uniquement les canaux souhaités et utiliser le jeu de données résultant en entrée dans l'outil.
- Dans Python, vous pouvez spécifier les canaux de votre choix sous forme de liste directement dans le paramètre de l'outil.
Pour plus d'informations sur les environnements de géotraitement qui s'appliquent à cet outil, reportez-vous à la rubrique Environnements d'analyse et Spatial Analyst.
Syntaxe
PrincipalComponents (in_raster_bands, {number_components}, {out_data_file})
Paramètre | Explication | Type de données |
in_raster_bands [in_raster_band,...] | Canaux raster en entrée. Ils peuvent être de type entier ou à virgule flottante. | Raster Layer |
number_components (Facultatif) | Nombre des composantes principales. Ce nombre doit être supérieur à zéro et inférieur ou égal au nombre total de canaux raster en entrée. La valeur par défaut correspond au nombre total de rasters en entrée. | Long |
out_data_file (Facultatif) | Fichier de données ASCII en sortie contenant les paramètres des composantes principales. Le fichier de données en sortie enregistre les matrices de covariance et de corrélation, les valeurs et les vecteurs propres, le pourcentage de variance capturé par chaque valeur propre, ainsi que la variance cumulée décrite par les valeurs propres. L'extension du fichier en sortie est .txt ou .asc. | File |
Valeur renvoyée
Nom | Explication | Type de données |
out_multiband_raster | Jeu de données d'un raster multicanal en sortie. Si tous les canaux en entrée sont de type entier, les canaux raster en sortie seront également de type entier. Si certains des canaux en entrée sont de type virgule flottante, les canaux en sortie seront de type virgule flottante. Si la sortie est un raster Grid Esri, le nom doit comporter moins de 10 caractères. | Raster |
Exemple de code
Exemple 1 d'utilisation de l'outil PrincipalComponents (fenêtre Python)
Cet exemple effectue l'analyse en composantes principales (ACP) sur un raster multicanal en entrée et génère un raster multicanal en sortie.
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")
Exemple 2 d'utilisation de l'outil PrincipalComponents (script autonome)
Cet exemple effectue l'analyse en composantes principales (ACP) sur un raster multicanal en entrée et génère un raster multicanal en sortie.
# 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")
Environnements
Informations de licence
- ArcGIS Desktop Basic: Requiert Spatial Analyst
- ArcGIS Desktop Standard: Requiert Spatial Analyst
- ArcGIS Desktop Advanced: Requiert Spatial Analyst