多次元主成分分析 (Multidimensional Principal Components) (Image Analyst)

Image Analyst ライセンスで利用できます。

サマリー

多次元ラスターを主成分、荷重、および固有値に変換します。 データの分散を説明できる数まで成分を減らし、データをこれらの成分に変換して、空間パターンと時間パターンを簡単に特定できるようにします。

使用法

  • [固有値の出力] テーブルで分散の固有値および累積率を使用して、必須情報を失うことなくデータを定義するのに必要な主成分の数を設定します。

    固有値テーブル

    上記の例では、最初の成分に分散の 72.51 パーセントが示されています。 分散の 95 パーセントの値に到達するためには、最初の 5 つの成分を選択します。

  • [荷重の出力] パラメーターの値にチャートを適用して、[入力多次元ラスター] パラメーター内の各ラスターが主成分にどれだけ寄与しているかを判断します。

  • [主成分の数] パラメーターには、出力に含まれるバンドの数を指定します。 必要以上に大きいラスターが出力されないようにするには、成分の適切なパーセンテージまたは数を指定します。 通常は、最初のいくつかの成分がデータ内の分散のほとんどを占めます。

  • [主成分の出力] パラメーターの値として複数のバンドが指定されている場合は、各成分が 1 つのバンドで表されます。 それぞれの主成分を視覚化するには、バンド オプションを指定して [ストレッチ] レンダラーを使用します。

パラメーター

ラベル説明データ タイプ
入力多次元ラスター

入力多次元ラスター。

このツールでは、1 つのディメンションに沿ったデータ (時系列ラスターなど) または非時間ディメンション [X, Y, Z] で定義されたデータ キューブが処理されます。 深度や時間などの複数のディメンションが入力変数に含まれている場合は、デフォルトで最初のディメンション値が使用されます。

[多次元ラスター レイヤーの作成 (Make Multidimensional Raster Layer)] ツールまたは [多次元ラスターのサブセット (Subset Multidimensional Raster)] ツールを使用すると、必要に応じて多次元データを再定義できます。たとえば、多次元データを 1 次元の 1 つのデータセット内に構成することができます。

Raster Dataset; Mosaic Dataset; Raster Layer; Mosaic Layer; Image Service; File
モード

主成分分析の実行に使用する方法を指定します。

  • ディメンションの削減 (Dimension Reduction)入力時系列データは一連の画像として処理されます。 時間の経過とともに広がるパターンを抽出する主成分分析が計算されます。 これがデフォルトです。
注意:

このパラメーターの他のオプションは、ArcGIS Pro 2.9[ジオプロセシング] ウィンドウで使用できません。 使用できるオプションは [ディメンションの削減 (Dimension Reduction)] だけです。 このため、このパラメーターはジオプロセシング ツールのダイアログに表示されません。今後のリリースでオプションが増える予定です。

String
ディメンション

主成分の処理に使用するディメンション名。

String
主成分の出力

出力ラスター データセットの名前。 コンポーネントをバンドとして含むマルチバンド ラスターが出力されます。 最初のバンドが最大固有値を持つ最初の主成分になり、2 番目のバンドが 2 番目に大きい固有値を持つ主成分になり、以下同様に続きます。

出力は CRF ファイル形式 (*.crf) になります。

Raster Dataset; Table
荷重の出力

主成分に寄与している各入力ラスターの重みを含む出力テーブル。 これは、入力データと出力主成分の相関関係を示します。 *.csv ファイル拡張子を使用して、荷重をカンマ区切り値ファイルとして出力します。

Table; Raster Dataset
固有値の出力
(オプション)

出力固有値テーブル。 固有値は、各成分の分散率を示す値です。 固有値を使用すると、データセットを表現する必要のある主成分の数を定義することができます。

Table
変数
(オプション)

計算で使用される入力多次元ラスターの変数。 入力ラスターが多次元であり、変数が指定されていない場合は、デフォルトで最初の変数だけが解析されます。

たとえば、温度の値が最高であった年を検索するには、解析対象の変数として温度を指定します。 変数を指定せず、変数として温度と降雨量の両方がある場合、両方の変数が解析され、出力多次元ラスターには両方の変数が含まれます。

String
主成分数
(オプション)

計算対象の主成分の数。通常は、入力ラスターの数よりも少なくなります。

このパラメーターには、パーセンテージ形式 (%) の値も指定できます。 たとえば、90% は、データ内の分散の 90% を説明できる成分の数が計算されることを意味します。

String

MultidimensionalPrincipalComponents(in_multidimensional_raster, mode, dimension, out_pc, out_loadings, {out_eigenvalues}, {variable}, {number_of_pc})
名前説明データ タイプ
in_multidimensional_raster

入力多次元ラスター。

このツールでは、1 つのディメンションに沿ったデータ (時系列ラスターなど) または非時間ディメンション [X, Y, Z] で定義されたデータ キューブが処理されます。 深度や時間などの複数のディメンションが入力変数に含まれている場合は、デフォルトで最初のディメンション値が使用されます。

[多次元ラスター レイヤーの作成 (Make Multidimensional Raster Layer)] ツールまたは [多次元ラスターのサブセット (Subset Multidimensional Raster)] ツールを使用すると、必要に応じて多次元データを再定義できます。たとえば、多次元データを 1 次元の 1 つのデータセット内に構成することができます。

Raster Dataset; Mosaic Dataset; Raster Layer; Mosaic Layer; Image Service; File
mode

主成分分析の実行に使用する方法を指定します。

  • DIMENSION_REDUCTION入力時系列データは一連の画像として処理されます。 時間の経過とともに広がるパターンを抽出する主成分分析が計算されます。 これがデフォルトです。
注意:

2.9 で使用できるオプションは DIMENSION_REDUCTON だけです。 今後のリリースでオプションが増える予定です。

String
dimension

主成分の処理に使用するディメンション名。

String
out_pc

出力ラスター データセットの名前。 コンポーネントをバンドとして含むマルチバンド ラスターが出力されます。 最初のバンドが最大固有値を持つ最初の主成分になり、2 番目のバンドが 2 番目に大きい固有値を持つ主成分になり、以下同様に続きます。

出力は CRF ファイル形式 (*.crf) になります。

Raster Dataset; Table
out_loadings

主成分に寄与している各入力ラスターの重みを含む出力テーブル。 これは、入力データと出力主成分の相関関係を示します。 *.csv ファイル拡張子を使用して、荷重をカンマ区切り値ファイルとして出力します。

Table; Raster Dataset
out_eigenvalues
(オプション)

出力固有値テーブル。 固有値は、各成分の分散率を示す値です。 固有値を使用すると、データセットを表現する必要のある主成分の数を定義することができます。

Table
variable
(オプション)

計算で使用される入力多次元ラスターの変数。 入力ラスターが多次元であり、変数が指定されていない場合は、デフォルトで最初の変数だけが解析されます。

たとえば、温度の値が最高であった年を検索するには、解析対象の変数として温度を指定します。 変数を指定せず、変数として温度と降雨量の両方がある場合、両方の変数が解析され、出力多次元ラスターには両方の変数が含まれます。

String
number_of_pc
(オプション)

計算対象の主成分の数。通常は、入力ラスターの数よりも少なくなります。

このパラメーターには、パーセンテージ形式 (%) の値も指定できます。 たとえば、90% は、データ内の分散の 90% を説明できる成分の数が計算されることを意味します。

String

コードのサンプル

MultidimensionalPrincipalComponents (多次元主成分分析) の例 1 (Python ウィンドウ)

この例では、NDVI 時系列ラスターから 3 つの主成分を計算します。 入力データと出力データはすべて c:\data というディレクトリに格納されます。

# Import system modules 
import arcpy 
from arcpy.ia import *  

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

arcpy.env.workspace = r"c:\data" 
arcpy.ia.MultidimensionalPrincipalComponents('ndviData.crf', 'DIMENSION_REDUCTION', "StdTime", "ndviData_PC.crf", "ndviData_loadings.csv", "ndviData_eiganvalues.csv", None, 3)
MultidimensionalPrincipalComponents (多次元主成分分析) の例 2 (スタンドアロン スクリプト)

この例では、NDVI 時系列ラスターから 4 つの主成分を計算します。 入力データと出力データはすべて c:\data というディレクトリに格納されます。

# Import system modules 
import arcpy 
from arcpy.ia import * 

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

# Define input parameters 
inputFile = r"c:\data\ndviData.crf" 
mode = "DIMENSION_REDUCTION" 
dimension = "StdTime" 
out_pc = r"c:\data\ndviData_pc.tif" 
out_loadings = r"c:\data\ndviData_loadings.csv" 
out_eiganvalues = r"c:\data\ndviData_pc.csv" 
variable = "ndvi" 
pc_number = 4 
  
# Execute  

arcpy.ia.MultidimensionalPrincipalComponents(inputFile, mode, dimension, out_pc, out_loadings, out_eiganvalues, variable, pc_number)

ライセンス情報

  • Basic: 次のものが必要 Image Analyst
  • Standard: 次のものが必要 Image Analyst
  • Advanced: 次のものが必要 Image Analyst

関連トピック