時空間キューブの記述 (Describe Space Time Cube) (時空間パターン マイニング)

サマリー

時空間キューブのコンテンツと特性を集約します。 このツールは、時空間キューブの時間範囲と空間範囲、時空間キューブの変数、変数ごとに実行される分析、各変数に使用可能な 2D および 3D の表示テーマについて説明します。

時空間キューブの記述ツールの図

使用法

  • このツールでは、時空間パターン マイニング ツールボックスのさまざまなツールで作成された netCDF ファイルを使用できます。

    時空間キューブの作成の詳細

  • このツールは、次のような場合に適用できます。

  • ジオプロセシング メッセージに入力時空間キューブの特性とコンテンツが記述されます。 このメッセージにアクセスするには、[ジオプロセシング] ウィンドウで、進行状況バーにポインターを合わせるか、ポップアップ ボタンをクリックするか、メッセージ セクションを展開します。 このメッセージには次の情報が含まれています。

    • 時空間キューブが作成された日時。
    • 時空間キューブの作成に使用された ArcGIS Pro のバージョン。
    • 時空間キューブのタイプ。 可能なタイプには、定義済み位置のキューブ、グリッド キューブ、定義済み位置のキューブ (多次元ラスターから)、予測キューブ、サブセット キューブが含まれます。 さまざまなタイプの時空間キューブの詳細については、「時空間キューブの作成の詳細」をご参照ください。
      注意:

      ArcGIS Pro 2.8 以前の [多次元ラスター レイヤーから時空間キューブを作成 (Create Space Time Cube From Multidimensional Raster Layer)] ツールを使用して時空間キューブを作成した場合、表示されるタイプは、定義済み位置のキューブ (多次元ラスターから) ではなく定義済み位置のキューブになります。

    • 時空間キューブの時空間プロパティを説明する [時空間キューブの特性] セクション。 これらの特性の詳細については、「時空間キューブの作成の詳細」をご参照ください。
    • 各行が入力時空間キューブの変数に対応する [時空間キューブのコンテンツ] セクション。 各行には、変数の要約統計、(集約と塗りつぶしタイプとともに) 変数を作成したツール、[時空間キューブを 2D で視覚化 (Visualize Space Time Cube in 2D)] ツールと [時空間キューブを 3D で視覚化 (Visualize Space Time Cube in 3D)] ツールで使用可能な表示テーマ オプションが含まれます。
    • [ポイントの集約による時空間キューブの作成 (Create Space Time Cube By Aggregating Points)] ツールを使用して時空間キューブを作成した場合、メッセージの [時空間キューブ ロケーションとビン] セクションの下に 1 つ以上のサブセクションが含まれます。 [カウント] サブセクションとオプションの各 [サマリー フィールド] サブセクションには、少なくとも 1 つのポイントで含んだビンとロケーションの数が含まれます。 散在性 (ゼロ カウントを含むビンのパーセンテージ) も [カウント] サブセクションの表に示されます。
    • 時系列予測ツールセットを使用して時空間キューブを作成した場合、メッセージには、適用された予測方法を要約する [予測の詳細] セクションが含まれます。
    • メッセージの [時空間キューブの傾向] の下には 1 つ以上のセクションが含まれます。 これらのセクションには、時空間キューブの各変数の全体的な Mann-Kendall トレンド統計が含まれます。
  • [出力特性テーブル] パラメーターに値を指定すると、このツールは、入力時空間キューブの時空間特性を含むテーブルを作成します。 特性テーブル内の値は、ジオプロセシング メッセージにも表示されます。 これらの値は、時空間分析ワークフローを作成するために、ModelBuilder で使用されます。

  • [出力空間範囲フィーチャ] パラメーターに値を指定すると、このツールは、入力時空間キューブの範囲を表す単一の四角形を含むポリゴン フィーチャクラスを出力します。 [定義済みの位置による時空間キューブの作成 (Create Space Time Cube By Defined Locations)] ツールを使用し、単一のポイントを使用して入力時空間キューブを作成した場合、ポリゴン フィーチャクラスの代わりにポイント フィーチャクラスが作成されます。 テンプレート キューブから時空間キューブを作成した場合、その範囲にテンプレート キューブの範囲が反映されます。

  • 時空間キューブの作成時にテンプレート キューブまたは Extent 環境を使用した場合、[出力空間範囲フィーチャ] パラメーターの値は時空間キューブ ロケーションの範囲を反映しません。

パラメーター

ラベル説明データ タイプ
入力時空間キューブ

記述対象の時空間キューブ。 時空間キューブのファイル拡張子は「*.nc」です。時空間キューブは、時空間パターン マイニング ツールボックスのさまざまなツールを使用して作成されます。

File
出力特性テーブル
(オプション)

入力時空間キューブに関するサマリー情報を含むテーブル。

Table
出力空間範囲フィーチャ
(オプション)

入力時空間キューブの空間範囲を表す単一の四角形を含むフィーチャクラス。

Feature Class

arcpy.stpm.DescribeSpaceTimeCube(in_cube, {out_characteristics_table}, {out_spatial_extent})
名前説明データ タイプ
in_cube

記述対象の時空間キューブ。 時空間キューブのファイル拡張子は「*.nc」です。時空間キューブは、時空間パターン マイニング ツールボックスのさまざまなツールを使用して作成されます。

File
out_characteristics_table
(オプション)

入力時空間キューブに関するサマリー情報を含むテーブル。

Table
out_spatial_extent
(オプション)

入力時空間キューブの空間範囲を表す単一の四角形を含むフィーチャクラス。

Feature Class

コードのサンプル

DescribeSpaceTimeCube の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、DescribeSpaceTimeCube 関数の使用方法を示しています。

import arcpy
arcpy.stpm.DescribeSpaceTimeCube("input_cube.nc")
DescribeSpaceTimeCube の例 2 (スタンドアロン スクリプト)

次のスタンドアロン Python スクリプトは、DescribeSpaceTimeCube 関数の使用方法を示しています。

# Use the output from the Describe Space Time Cube tool to 
# test whether a set of space-time cubes match a set of criteria. Input the 
# space-time cubes that pass the criteria to the Evaluate Forecast by Location 
# tool.

# Import system modules
import os
import glob
import arcpy

# Set Workspace
arcpy.env.workspace = r"C:\Describe"
out_gdb = os.path.join(arcpy.env.workspace, "GDB.gdb")
arcpy.env.overwriteOutput = True

# Assign global variables
check_fields = ['MIN_X', 'MIN_Y', 'MAX_X', 'MAX_Y', 'NUM_FORECAST', 
          'FIRST_FORECAST_START', 'FIRST_FORECAST_END',
          'LAST_FORECAST_START','LAST_FORECAST_END', 'VALIDATION_TIME_STEPS']

# Iterate through all the space-time cubes in a folder
evaluate_cubes = ''

for cube in glob.glob(os.path.join(arcpy.env.workspace, '*.nc')):
    cube_suffix = os.path.basename(cube)
    cube_name = os.path.splitext(cube_suffix)[0]

    out_describe_fc_name = ("describe" + "_{}").format(cube_name)
    out_table = os.path.join(out_gdb, out_describe_fc_name)
    
    # Run the Describe Space Time Cube tool and save a characteristics table into a GDB
    arcpy.stpm.DescribeSpaceTimeCube(cube, out_table, None)
    lstFields = arcpy.ListFields(out_table)

    for field in lstFields:
        # Check if the space-time cube is a forecast cube
        if field.name == "NUM_FORECAST":     
            with arcpy.da.SearchCursor(out_table, check_fields) as cursor:       
                # Check if the extent, start forecast, end forecast, and validation steps  
                # are all the same
                for row in cursor:
                    if str(row[0]) == '-13847325.1116' and str(row[1]) == '3833847.5631' and \
                       str(row[2]) == '-12704362.5439' and str(row[3]) == '5161307.7693' and \
                       str(row[4]) == '14' and str(row[5]) == '2022-02-27 00:00:02' and \
                       str(row[6]) == '2022-02-28 00:00:01' and str(row[7]) == '2022-03-12 00:00:01' and \
                       str(row[8]) == '2022-03-13 00:00:01' and str(row[9]) == '14':
               
                        # Add the space-time cubes that match the criteria to a string 
                        # that will be input into the Evaluate Forecast by Location tool
                        evaluate_cubes += cube + ';'


# Run the Evaluate Forecast by Location tool
evaluate_output = os.path.join(out_gdb, "Evaluate_Covid19_Forecasts")

arcpy.stpm.EvaluateForecastsByLocation(evaluate_cubes.replace('\\', '/'), evaluate_output, None, "USE_VALIDATION")

環境

このツールは、ジオプロセシング環境を使用しません。

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック