Image Analyst ライセンスで利用できます。
Spatial Analyst のライセンスで利用可能。
概要
既存の多次元ラスター内のスライスごとに異常を計算し、新しい多次元ラスターを生成します。
異常は、その標準値または平均値からの観測の偏差です。
使用法
サポートされている多次元ラスター データセットには、netCDF、GRIB、HDF、Esri の CRF などがあります。多次元モザイク データセットもサポートされています。
このツールは、多次元ラスター データセットを CRF (Cloud Raster Format) で生成します。現在、他の出力形式はサポートされていません。
このツールは、多次元ラスター内の 1 つ以上の変数で経時的な異常を計算します。時間ディメンションに加えて非時間ディメンションがある場合、追加のディメンションにおける各ステップで異常が計算されます。
たとえば、月次の海洋温度データがあり、最大 100m まで 1m ごとに収集している場合、年平均からの偏差として温度の異常を計算します。[多次元異常の生成 (Generate Multidimensional Anomaly)] ツールは、[平均の計算間隔] パラメーターを [毎年] に設定すると、年平均に基づいて温度の異常を決定し、100 深度ごとの異常値を返します。
このツールは、時間ディメンションがある多次元ラスター データセットのみをサポートしています。
異常値を計算する数学的手法は、以下のとおりです。平均の定義として平均値または中央値のいずれかを使用して異常を計算できます。データ分布に偏りがある場合、平均は外れ値の影響を大きく受けるため、このデータ タイプの場合は中央値または Z スコアを使用する方法が適している可能性があります。
- 平均からの差異 = x - µ
- x = スライス内のピクセル値
- µ = 指定した時間間隔内のそのピクセル値の平均
- 平均からのパーセント差 = |x - µ| / [(x + µ)/2]
- x = スライス内のピクセル値
- µ = 指定した時間間隔内のそのピクセル値の平均
- |x - µ| = 値と平均の差の絶対値
- 平均の割合 = x - µ
- x = スライス内のピクセル値
- µ = 指定した時間間隔内のそのピクセル値の平均
- 中央値からの差異 = x - ß
- x = スライス内のピクセル値
- ß = 指定した時間間隔内のそのピクセル値の中央値
- 中央値からのパーセント差 = |x - ß| / [(x + ß)/2]
- x = スライス内のピクセル値
- ß = 指定した時間間隔内のそのピクセル値の中央値
- |x - ß| = 値と中央値の差の絶対値
- 中央値の割合 = x / ß
- x = スライス内のピクセル値
- ß = 指定した時間間隔内のそのピクセル値の中央値
- Z スコア = (x - µ) / S
- x = スライス内のピクセル値
- µ = 指定した時間間隔内のそのピクセル値の平均
- S = 指定した時間間隔内のそのピクセル値の標準偏差
- 平均からの差異 = x - µ
平均と中央値は入力多次元ラスターから計算できます。また、平均の計算間隔パラメーターのラスター入力として平均または中央値を直接渡すことでも計算できます。外部ラスターは単一ラスターにすることも、多次元ラスターにすることもできます。入力が単一ラスターの場合、各スライスのピクセル値と、外部ラスターで対応するピクセル値を比較することで平均の差を計算します。入力が多次元ラスターの場合、平均の差を計算することで対応するスライスを比較し、変数と次元の数と名前を一致させます。
外部ラスターの範囲、セル サイズ、空間参照は入力多次元ラスターと同じにする必要があります。
外部ラスターを使って平均の差を計算する場合、Z スコア異常の計算方法はサポートされません。
構文
GenerateMultidimensionalAnomaly(in_multidimensional_raster, {variables}, {method}, {calculation_interval}, {ignore_nodata}, {reference_mean_raster})
パラメーター | 説明 | データ タイプ |
in_multidimensional_raster | 入力多次元ラスター データセット。 | Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; File |
variables [variables,...] (オプション) | 異常を計算する変数。変数が指定されない場合、時間ディメンションを含む変数がすべて解析されます。 | String |
method (オプション) | 異常の計算に使用する方法を指定します。
| String |
calculation_interval (オプション) | 平均の計算に使用する時間間隔を指定します。
| String |
ignore_nodata (オプション) | 解析で NoData 値を無視するかどうかを指定します。
| Boolean |
reference_mean_raster (オプション) | 以前に計算したピクセルごとの平均を含む参照ラスター データセット。異常はこの平均と比較することで計算されます。 | Raster Layer; Raster Dataset; Mosaic Layer; Mosaic Dataset |
戻り値
名前 | 説明 | データ タイプ |
out_multidimensional_raster | 出力される CRF (Cloud Raster Format) 多次元ラスター データセット。 | Raster |
コードのサンプル
次の例では、温度データの多次元異常ラスターを生成して、すべてのスライスでピクセル値を平均ピクセル値と比較します。
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
tempanomaly = arcpy.ia.GenerateMultidimensionalAnomaly(
"c:/data/climateData.nc", "temperature", "DIFFERENCE_FROM_MEAN",
"ALL", "DATA", None)
tempanomaly.save("c:/data/TempAnomaly.crf")
次の例では、海洋温度データの多次元異常ラスターを生成して、ピクセル値を毎年の平均と比較します。
# Import system modules
import arcpy
from arcpy.ia import *
# Define input parameters
inputFile = "c:/data/climateData.crf"
variable = "oceantemp"
averageMethod = "PERCENT_DIFFERENCE_FROM_MEAN"
averageInterval = "EXTERNAL_RASTER"
ignoreNoData = "DATA"
referenceRaster = "c:/data/Average_OceanTemp.crf"
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Execute
Anomaly = arcpy.ia.GenerateMultidimensionalAnomaly(inputFile, variable,
averageMethod, averageInterval, ignoreNoData, referenceRaster)
# Save output
Anomaly.save("c:/data/TempAnomaly.crf")
環境
ライセンス情報
- Basic: 次のものが必要 Image Analyst または Spatial Analyst
- Standard: 次のものが必要 Image Analyst または Spatial Analyst
- Advanced: 次のものが必要 Image Analyst または Spatial Analyst