多次元ラスターの相関 (Multidimensional Raster Correlation) (Image Analyst)

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

サマリー

1 つまたは 2 つの多次元ラスターで 2 つの変数間の相関関係を解析します。

このツールは、2 つの多次元ラスターを入力として使用し、Pearson、Kendall、またはスピアマン相関方法を使用して 2 つの変数を比較し、相関ラスターを出力します。各ピクセルは、対応するピクセル配列の相関値を表します。 出力ラスターでは、2 つの変数が相関している場所と相関していない場所をマッピングできます。

このツールは、ラグがゼロ以外の値の場合に相互相関関数、2 つの入力が同じ場合に自己相関も計算できます。

1 つまたは 2 つの多次元ラスターで 2 つの変数間の相関関係を解析できます。 各ピクセルが 2 つの変数からの 2 つの時系列の相関である相関ラスターが出力されます。 このツールを使用して、ラグ、相互相関関数、または自己相関で相関を計算できます。 たとえば、下図の相関ラスターは、時間経過に伴う土壌水分変数および時間経過に伴う降水量変数から計算されました。

多次元ラスターの相関ツールの図
相関ラスターは毎月の土壌水分および毎月に降水量から計算されています。

使用法

  • 2 つの多次元ラスターの各ピクセル位置で、ツールは、2 つの変数からの対応する 2 つのピクセル配列を使用し、相関値を計算します。 重なり合うピクセルごとに 2 つの並んだ配列を比較し、不要なデータを切り捨てます。 ピクセル配列の長さが異なる場合、長い方の末尾が切り詰められます。

  • 2 つの多次元ラスターのセル サイズ、空間範囲、投影法は同じでなければなりません。 時間範囲や時間間隔は同じである必要はありません。

  • 同じ間隔が必要な場合に次元間隔をリサンプリングするには、[多次元ラスターの集約 (Aggregate Multidimensional Raster)] ツールまたはディメンションによるラスターの内挿関数を使用します。

  • 同じ次元範囲を定義するには、[多次元ラスターのサブセット (Subset Multidimensional Raster)] ツールまたは多次元フィルター関数を使用します。

  • または、[ラグ] パラメーターを使用して、指定したステップでピクセル配列をシフトすることにより 2 つの変数をディメンション的に揃えて相関値を計算する方法を制御することもできます。 値が 0 の場合はシフトせず、値が 2 の場合は最初の変数を 2 インデックス (ステップ) 前にシフトして計算し、値が - 2 の場合は最初の変数を 2 ステップ後ろにシフトして計算します。

    たとえば、最初のラスターのピクセル配列が 0、1、2、3、2 つ目のラスターのピクセル配列が 4、5、6、7、8、9 とします。

    ラグ パラメーターを使用して多次元データをフィルタリング
    ラグ パラメーターを使用して、2 つの変数がディメンション的に揃えられています。 値が 0 の場合、0、1、2、3 と 4、5、6、7 が比較され、値が 2 の場合、0、1、2、3 と 6、7、8、9 が比較され、値が -1 の場合、1、2、3 と 4、5、6 が比較されます。

  • ラグは、1 つの (先頭の) 変数が後の時点および同期でもう 1 つの (遅れている) 変数の値と相互相関にある状態を表します。

  • 相互相関関数は指定した範囲にある各ラグの相関ラスターを計算し、計算された相関ラスターはマルチバンド ラスターとして保存されます。 [P 値の計算] パラメーターをオンにすると、他のバンドが出力に追加されます。 不要な出力バンドを作成しないようにワークフローを設計してください。

  • 自己相関を計算するには、1 つ目の入力と 2 つ目の入力を同じ多次元ラスター、ディメンション名、変数で設定します。

パラメーター

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

入力多次元ラスター データセット。

サポートされている形式の最初の入力多次元ラスター。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service
入力多次元ラスター 2

最初の入力と相関する 2 つ目の入力多次元ラスター。 [入力多次元ラスター レイヤー 1] パラメーターの値が [入力多次元ラスター レイヤー 2] パラメーターの値と同じ場合、自己相関が計算されます。 自己相関は、2 つの連続的な時間間隔の間にある同じ変数の相関度を表します。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service
ラスター 1 のディメンション名
(オプション)

最初のデータセットのディメンション名。ピクセル配列を定義する際に使用します。 入力に 2 つの非空間ディメンションがある場合、ディメンションを指定する必要があります。 計算に使用するディメンションの長さは 2 より長くする必要があります。

String
変数 1
(オプション)

最初の入力ラスターの変数名。

String
ラスター 2 のディメンション名
(オプション)

2 番目のデータセットのディメンション名。 計算に使用するディメンションの長さは 2 より長くする必要があります。

String
変数 2
(オプション)

2 番目の入力ラスターの変数名。

String
相関方法
(オプション)

使用する相関の計算方法を指定します。

  • ピアソン相関方法はピアソンです。 これがデフォルトです。
  • スピアマン相関方法はスピアマンです。
  • ケンドール相関方法はケンドールです。
String
ラグ
(オプション)

タイム ラグに応じて、指定したステップ (0 ~ ディメンション/2) でピクセル配列をシフトすることにより相関値を計算します。 デフォルトは 0 です。

Long
ラグで相互相関関数を計算
(オプション)

相互相関関数をラグで計算するかどうかを指定します。

有効にすると、ラグ値で定義した範囲内にある各ラグで相関が計算されます。 たとえば、ラグ値が 2 の場合、-2,-1、0、1、2 の相関が計算され、バンドとして出力ラスターに格納されます。

  • オン - 相互相関関数をラグで計算します。
  • オフ - 相互相関関数をラグで計算しません。 これがデフォルトです。

Boolean
P 値の計算
(オプション)

P 値をラグで計算するかどうかを指定します。 P 値は、2 つの変数がどれだけ適切に相関しているかを示す信頼値です。

  • オン - P 値をラグで計算します。 出力には、P 値を格納している追加のバンドが含まれます。
  • オフ - P 値をラグで計算しません。 これがデフォルトです。

Boolean
出力最大相関ラスター
(オプション)

最大の相関値および最大の相関が発生したラグを含む 2 バンド ラスター。 このラスターは、[ラグで相互相関関数を計算] パラメーターをオンにした場合に作成されます。

最大の相関値および最大の相関が発生したラグを含む 2 バンド ラスター。 このラスターは、calculate_xcorr パラメーターが ALL_CROSS_CORRELATION として指定されている場合に作成されます。

Raster Dataset

戻り値

ラベル説明データ タイプ
出力ラスター

出力ラスター データセット。 lag パラメーターの値が 0 以外の場合、各ラグで相互相関が計算され、バンドとして出力に格納されます。

Raster Dataset

MultidimensionalRasterCorrelation(in_mdim_raster1, in_mdim_raster2, {dimension1}, {variable1}, {dimension2}, {variable2}, {corr_method}, {lag}, {calculate_xcorr}, {calculate_pvalue}, {out_max_corr_raster})
名前説明データ タイプ
in_mdim_raster1

入力多次元ラスター データセット。

サポートされている形式の最初の入力多次元ラスター。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service
in_mdim_raster2

最初の入力と相関する 2 つ目の入力多次元ラスター。 計算に使用するディメンションの長さは 2 より長くする必要があります。 in_mdim_raster1 パラメーターの値が in_mdim_raster2 パラメーターの値と同じ場合、自己相関が計算されます。 自己相関は、2 つの連続的な時間間隔の間にある同じ変数の相関度を表します。

Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service
dimension1
(オプション)

最初のデータセットのディメンション名。ピクセル配列を定義する際に使用します。 入力に 2 つの非空間ディメンションがある場合、ディメンションを指定する必要があります。 計算に使用するディメンションの長さは 2 より長くする必要があります。

String
variable1
(オプション)

最初の入力ラスターの変数名。

String
dimension2
(オプション)

2 番目のデータセットのディメンション名。 計算に使用するディメンションの長さは 2 より長くする必要があります。

String
variable2
(オプション)

2 番目の入力ラスターの変数名。

String
corr_method
(オプション)

使用する相関の計算方法を指定します。

  • PEARSON相関方法はピアソンです。 これがデフォルトです。
  • SPEARMAN相関方法はスピアマンです。
  • KENDALL相関方法はケンドールです。
String
lag
(オプション)

タイム ラグに応じて、指定したステップ (0 ~ ディメンション/2) でピクセル配列をシフトすることにより相関値を計算します。 デフォルトは 0 です。

Long
calculate_xcorr
(オプション)

相互相関関数をラグで計算するかどうかを指定します。

ALL_CROSS_CORRELATION を指定すると、ラグ値で定義した範囲内にある各ラグで相関が計算されます。 たとえば、ラグ値が 2 の場合、-2,-1、0、1、2 の相関が計算され、バンドとして出力ラスターに格納されます。

  • ALL_CROSS_CORRELATION相互相関関数をラグで計算します。
  • NO_CROSS_CORRELATION相互相関関数をラグで計算しません。 これがデフォルトです。
Boolean
calculate_pvalue
(オプション)

P 値をラグで計算するかどうかを指定します。 P 値は、2 つの変数がどれだけ適切に相関しているかを示す信頼値です。

  • CALCULATE_P_VALUEP 値をラグで計算します。 出力には、P 値を格納している追加のバンドが含まれます。
  • NO_P_VALUEP 値をラグで計算しません。 これがデフォルトです。
Boolean
out_max_corr_raster
(オプション)

最大の相関値および最大の相関が発生したラグを含む 2 バンド ラスター。 このラスターは、calculate_xcorr パラメーターが ALL_CROSS_CORRELATION として指定されている場合に作成されます。

Raster Dataset

戻り値

名前説明データ タイプ
out_raster

出力ラスター データセット。 lag パラメーターの値が 0 以外の場合、各ラグで相互相関が計算され、バンドとして出力に格納されます。

Raster Dataset

コードのサンプル

MultidimensionalRasterCorrelation の例 1 (Python ウィンドウ)
# Import system modules 
import arcpy 
from arcpy.ia import * 

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

# Execute 
arcpy.env.workspace = r"c:\data" 
output=arcpy.ia.MultidimensionalRasterCorrelation("soil2022.crf", "weather2022.crf", "StdTime", "soilm", "StdTime", "temperature", "PEARSON", 0, "NO_CROSS_CORRELATION", "NO_P_VALUE", None)
output.save("correlationraster.crf")
MultidimensionalRasterCorrelation の例 2 (スタンドアロン スクリプト)
# Import system modules 
import arcpy 
from arcpy.ia import * 

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

# Define input parameters
raster1=r"E:\data\soil2022.crf"
raster2=r"E:\data\weather2022.crf"
dimension1="StdTime"
variable1="soilm"
dimension2="StdTime"
variable2="temperature"
correlation_method="PEARSON"
lag=3
calculate_cross_correlation="ALL_CROSS_CORRELATION"
calculate_pvalue="CACULATE_P_VALUE"
out_max_correlation_raster=r"E:\data\max_correlation.crf"

# Execute 
output = arcpy.ia.MultidimensionalRasterCorrelation(raster1, raster2, dimension1, variable1, dimension2, variable2, correlation _method, lag, calculate_cross_correlatio, calculate_pvalue, out_max_ correlation_raster)
output.save(r"E:\data\cross_correlation_raster.crf")

関連トピック