Image Analyst ライセンスで利用できます。
Spatial Analyst のライセンスで利用可能。
概要
既存の多次元ラスター変数をディメンションに沿って結合することによって、多次元ラスター データセットを生成します。
使用法
[集約定義] パラメーターを使用すると、キーワード、値、または値の範囲を使用して、間隔を選択できます。たとえば、30 年間の海面温度データがあり、最大 100 メートルまで深度 5 メートルごとに毎日収集している場合、次のようなシナリオで、異なる間隔オプションを使用できます。
- 毎日の温度データを月次データに集約します。月次データでは、結果は 12 個のタイム スライスを含む多次元ラスターとして表され、各スライスはすべての年の各月を集約したものです。[間隔キーワード] を選択し、そのキーワードを [毎月繰り返し] に設定します。
- 毎日の温度データを月次データに集約します。そうすると、結果は 360 個のスライス、つまり 1 年あたり 12 個のタイム スライス (30 年 x 12 か月 = 360 個のスライス) を含む多次元ラスターになります。[間隔キーワード] を選択し、そのキーワードを [毎月] に設定します。
- 毎月の温度データを 4 か月間隔に集約します。[間隔値] を選択し、[間隔値] を [4]、[単位] を [月] に設定します。
- 0 ~ 25 メートル、25 ~ 50 メートル、50 ~ 100 メートルの温度データを集約します。[間隔範囲] を選択して、最小深度と最大深度を [0 25; 25 50; 50 100] に指定します。
サポートされている多次元ラスター データセットには、CRF (Cloud Raster Format)、多次元モザイク データセット、netCDF、GRIB、または HDF ファイルで生成された多次元ラスター レイヤーがあります。
このツールは、多次元ラスター データセットを CRF (Cloud Raster Format) で生成します。現在、他の出力形式はサポートされていません。
デフォルトでは、出力された多次元ラスターは、LZ77 圧縮タイプを使用して圧縮されます。ただし、圧縮タイプを LERC に変更し、データに応じて最大誤差の値を調整することをお勧めします。たとえば、解析結果が小数点以下 3 桁まで正確であることを期待する場合は、0.001 を最大誤差の値に使用します。不要な精度要件は、処理時間およびストレージ サイズを増やすため、避けることをお勧めします。
圧縮タイプを変更するには、環境設定を変更します。
構文
AggregateMultidimensionalRaster(in_multidimensional_raster, dimension, {aggregation_method}, {variables}, {aggregation_def}, {interval_keyword}, {interval_value}, {interval_unit}, {interval_ranges}, {aggregation_function}, {ignore_nodata})
パラメーター | 説明 | データ タイプ |
in_multidimensional_raster | 入力多次元ラスター データセット。 | Raster Dataset; Raster Layer; Mosaic Dataset; Mosaic Layer; Image Service; File |
dimension | 集約のディメンション。このディメンションに沿って変数が集約されます。 | String |
aggregation_method (オプション) | 間隔内で集約されたスライスを結合するために使用される数学的手法を指定します。
aggregation_method を CUSTOM に設定すると、aggregation_function パラメーターが有効になります。 | String |
variables [variables,...] (オプション) | 指定したディメンションに沿って集約する変数。変数を指定しない場合、選択したディメンションですべての変数が集約されます。 たとえば、日次温度データを月次平均値に集約するには、温度を集約する変数として指定します。変数を指定せず、変数として毎日の温度と毎日の降雨量がある場合、両方の変数が毎月の平均に集約され、出力多次元ラスターには両方の変数が含まれます。 | String |
aggregation_def (オプション) | データを集約するディメンションの間隔を指定します。
| String |
interval_keyword (オプション) | ディメンションに沿って集約するときに使用されるキーワードの間隔を指定します。このパラメーターは、aggregation_def が INTERVAL_KEYWORD に設定されている場合に必須で、時間に沿って集約する必要があります。
| String |
interval_value (オプション) | 集約に使用される間隔のサイズ。このパラメーターは、aggregation_def パラメーターが INTERVAL_VALUE に設定されている場合に必須です。 たとえば、30 年間の毎月の温度データを 5 年ごとに集約するには、interval_value に 5 を入力し、interval_unit を YEARS に指定します。 | Double |
interval_unit (オプション) | interval_value パラメーターに使用する単位。このパラメーターは、dimension パラメーターが時間フィールドに設定されていて、aggregation_def パラメーターが INTERVAL_VALUE に設定されている場合に必須です。 時間以外で集約をしている場合、このオプションは使用できず、間隔値の単位は入力多次元ラスター データの変数単位と一致します。
| String |
interval_ranges [interval_ranges,...] (オプション) | 値テーブルで指定した間隔範囲が、値のグループを集約するのに使用されます。値テーブルは範囲の最小値と最大値のペアで構成され、データ タイプは Double または Date です。 このパラメーターは、aggregation_def パラメーターが INTERVAL_RANGE にされている場合に必須です。 | Value Table |
aggregation_function (オプション) | 集約するラスターのピクセル値を計算するのに使用するカスタム ラスター関数。入力は、関数チェーンまたはカスタム Python ラスター関数から作成されたラスター関数の JSON オブジェクトまたは *.rft.xml ファイルです。 このパラメーターは、aggregation_method パラメーターが CUSTOM に設定されている場合に必須です。 | File; String |
ignore_nodata (オプション) | 解析で NoData 値を無視するかどうかを指定します。
| Boolean |
戻り値
名前 | 説明 | データ タイプ |
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")
aggMultidim = arcpy.ia.AggregateMultidimensionalRaster("climateData.crf",
"StdTime", "MEAN", "temperature", "INTERVAL_KEYWORD", "YEARLY",
None, "", None, "", "DATA")
aggMultidim.save("C:/data/YearlyTemp.crf")
この例では、毎日の降雨量と温度データを、毎月の最大降雨量と最大温度値のデータに集約します。
# Import system modules
import arcpy
from arcpy.ia import *
# Check out the ArcGIS Image Analyst extension license
arcpy.CheckOutExtension("ImageAnalyst")
# Define input parameters
inputFile = "C:/data/dailyclimateData.crf"
dimensionName = "StdTime"
aggregationMethod = "MAXIMUM"
variables = "temperature;precipitation"
aggregationDefinition = "INTERVAL_KEYWORD"
keyword = "MONTHLY"
ignore_nodata = "DATA"
# Execute
aggMultidim = arcpy.ia.AggregateMultidimensionalRaster(inFile, dimensionName,
variables, aggregationMethod, aggregation_def, keyword, None, "", None, "",
ignore_nodata)
# Save output
aggMultidim.save("C:/data/monthlymaxtemp.crf")
環境
ライセンス情報
- Basic: 次のものが必要 Image Analyst または Spatial Analyst
- Standard: 次のものが必要 Image Analyst または Spatial Analyst
- Advanced: 次のものが必要 Image Analyst または Spatial Analyst