サマリ
時空間ビンにそれらを集めることで、netCDF データ構造にポイントを集約します。各ビン内のポイントがカウントされます。すべてのビンの位置に対して、時間の経過に伴うポイント数の傾向が評価されます。
図
使用法
このツールは、[入力フィーチャ] のポイントを各時空間ビンに集約します。作成されるデータ構造は、空間を表す x ディメンションと y ディメンションおよび時間を表す t ディメンションを持つ時空間ビンで構成された 3 次元キューブと考えることができます。
ビンごとに、空間 (x、y) と時間 (t) の固定された位置があります。同じ (x、y) エリアをカバーするビンは、同じロケーション ID を共有します。同じ期間を含むビンは、同じ時間ステップ ID を共有します。ポイント データが矩形でなくてもキューブは必ず矩形であるため、すべての時間ステップに対してゼロのポイント数を持つ場所もあります。大多数の分析では、データがある位置、つまり、少なくとも 1 つの時間ステップの間に少なくとも 1 つのポイント数が 1 より大きい位置のみが分析に含まれます。
[入力フィーチャ] は、犯罪や火事のイベント、病気のインシデント、交通事故などのイベント データを表すポイントである必要があります。各ポイントには日付が関連付けられている必要があります。イベントのタイムスタンプが格納されるフィールドのタイプは、DATE である必要があります。このツールでは、60 個以上のポイントとさまざまなタイムスタンプが必要です。指定したパラメーターによってキューブに 20 億個以上のビンが生成されると、このツールは失敗します。
このツールで距離を正確に測定するには、投影データが必要です。
このツールの出力は、入力ポイントの netCDF 表現と、キューブの特性を要約するメッセージです。このメッセージは [結果] ウィンドウに書き込まれます。 作成された netCDF ファイルは、[時空間ホット スポット分析 (Emerging Hot Spot Analysis)] ツールへの入力として使用できます。キューブのコンテンツを表示する方法については、「時空間キューブの視覚化」をご参照ください。
[時間フィールド] パラメーターで Date タイプのフィールドを選択します。このフィールドには、各ポイント フィーチャと関連付けられたタイムスタンプが含まれます。
[時間ステップの間隔] は、集約されるポイントを時間全体で分割する方法を定義します。たとえば、1 日、1 週、1 年などの間隔を使用してポイントを集約するように指定できます。時間ステップの間隔は常に固定された期間であり、ツールでは 10 個以上の時間ステップが必要です。[時間ステップの間隔] の値を指定しない場合、ツールは自動的にこの値を計算します。デフォルトの時間ステップ間隔が計算される方法の詳細については、「時空間キューブの作成 (Create Space Time Cube) の詳細」をご参照ください。有効な時間ステップ間隔の単位は、年、月、日、時、分、秒です。
[時間ステップの間隔] は、整数値と単位値として入力します。時間ステップの間隔の入力例としては、「1 週」、「2 週」、「13 日」、「1 月」などがあります。
特に、連続する期間のデータを比較する場合、分析を実行するたびに使用するための [テンプレート キューブ] を作成する必要があります。テンプレート キューブを指定することによって、解析範囲、ビン サイズ、時間ステップ間隔、基準時間、および時間ステップ配列が必ず一定になるようにします。
[テンプレート キューブ] を指定した場合、テンプレート キューブの範囲外にある入力ポイントは、分析から除外されます。また、入力ポイント フィーチャに関連付けられた空間参照が、テンプレート キューブに関連付けられた空間参照と異なる場合、ツールは、テンプレート キューブに一致するように [入力フィーチャ] を投影してから集約処理を開始します。テンプレート キューブに関連付けられた空間参照は、出力座標系の設定もオーバーライドします。さらに、[テンプレート キューブ] を指定すると、別の処理範囲が指定されていても、使用する処理範囲が決定します。
[基準時間] には、日時の値または日付のみの値を指定できますが、時間のみの値を指定することはできません。必要な形式は、コンピューターの地域の時間設定によって決まります。
[距離間隔] は、時空間ビンの規模を指定します。ビンは、ポイント データの集約に使用されます。たとえば、各ビンを 50 x 50 メートルにしたりできます。[テンプレート キューブ] が指定されている場合を除いて、キューブの左上隅にあるビンが [入力フィーチャ] の空間範囲の左上隅を中心として配置されます。分析において有意な距離間隔を選択する必要があります。距離間隔を大きくしすぎて、ポイント データの基になるパターンを失ってしまう場合と、距離間隔を小さくしすぎたため、結果としてキューブに充填されるポイント数が 0 になる場合との間のバランスを見つける必要があります。[距離間隔] 値を指定しない場合、ツールがこの値を自動的に計算します。デフォルトの距離間隔の計算方法に関する詳細については、「時空間キューブの作成 (Create Space Time Cube) の詳細」をご参照ください。サポートされている距離間隔単位は、キロメートル、メートル、マイル、フィートです。
集約されたカウント データに対して実行される傾向分析は、Mann-Kendall 統計に基づいています。
構文
CreateSpaceTimeCube_stpm (in_features, output_cube, time_field, {template_cube}, {time_step_interval}, {time_step_alignment}, {reference_time}, {distance_interval})
パラメータ | 説明 | データ タイプ |
in_features | 時空間ビンに集約される入力ポイント フィーチャクラス。 | Feature Layer |
output_cube | [入力フィーチャ] ポイント データの個数と要約を格納するために作成される出力 netCDF データ キューブ。 | File |
time_field | ポイントごとの日時 (タイムスタンプ) が格納されているフィールド。このフィールドは Date タイプである必要があります。 | Field |
template_cube (オプション) | output_cube の解析範囲、ビン ディメンション、およびビン配列の定義に使用される参照時空間キューブ。time_step_interval、distance_interval、および reference_time の値も、テンプレート キューブから取得されます。このテンプレート キューブは、このツールを使用して作成された netCDF (*.nc) ファイルでなければなりません。 | File |
time_step_interval (オプション) | 1 つの時間ステップを表す秒、分、時間、日、週、または年の数。同じ [時間ステップの間隔] および [距離間隔] 内のすべてのポイントが集約されます ([テンプレート キューブ] を指定した場合、このパラメーターは無視され、[時間ステップの間隔] の値はテンプレート キューブから取得されます)。このパラメーターの有効な入力例として、「1 週」、「13 日」、「1 年」などがあります。 | String |
time_step_alignment (オプション) | 指定された time_step_interval に基づいて集約方法が決定されます。template_cube を指定した場合、このパラメーターの設定値は template_cube に関連付けられた time_step_alignment によって無効化され、template_cube の time_step_alignment が使用されます。
| String |
reference_time (オプション) | 時間ステップの間隔を配列するために使用される日付/時間。たとえば、毎週 (月曜から日曜まで) のデータをビンに入れる場合、基準時間を日曜の深夜に設定することによって、日曜と月曜の間の深夜でビンが切り替わるようにすることができます (template_cube を指定した場合、このパラメーターは無視され、reference_time は template_cube に基づきます)。 | Date |
distance_interval (オプション) | in_features の集約に使用されるビンの空間範囲。同じ distance_interval および time_step_interval 内のすべてのポイントが集約されます (template_cube を指定した場合、このパラメーターは無視され、距離間隔の値は template_cube に基づきます)。 | Double |
コードのサンプル
CreateSpaceTimeCube (時空間キューブの作成) の例 1 (Python ウィンドウ)
次の Python ウィンドウ スクリプトは CreateSpaceTimeCube (時空間キューブの作成) ツールの使用方法を示しています。
arcpy.env.workspace = r"C:\STPM"
arcpy.CreateSpaceTimeCube_stpm("Homicides.shp", "Homicides.nc", "OccDate", "#", "3 Months",
"End time", "#", "3 Miles")
CreateSpaceTimeCube (時空間キューブの作成) の例 2 (スタンドアロン Python スクリプト)
次のスタンドアロン Python ウィンドウのスクリプトは、CreateSpaceTimeCube (時空間キューブの作成) ツールの使用方法を示しています。
# Create Space Time Cube of homicide incidents in a metropolitan area
# Import system modules
import arcpy
# Set geoprocessor object property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables...
workspace = r"C:\STPM"
try:
# Set the current workspace (to avoid having to specify the full path to the feature
# classes each time)
arcpy.env.workspace = workspace
# Create Space Time Cube of homicide incident data with 3 months and 3 miles settings
# Process: Create Space Time Cube
cube = arcpy.CreateSpaceTimeCube_stpm("Homicides.shp", "Homicides.nc", "MyDate", "#",
"3 Months", "End time", "#", "3 Miles")
# Create a polygon that defines where incidents are possible
# Process: Minimum Bounding Geometry of homicide incident data
arcpy.MinimumBoundingGeometry_management("Homicides.shp", "bounding.shp", "CONVEX_HULL",
"ALL", "#", "NO_MBG_FIELDS")
# Emerging Hot Spot Analysis of homicide incident cube using 5 Miles neighborhood
# distance and 2 neighborhood time step to detect hot spots
# Process: Emerging Hot Spot Analysis
cube = arcpy.EmergingHotSpotAnalysis_stpm("Homicides.nc", "COUNT", "EHS_Homicides.shp",
"5 Miles", 2, "bounding.shp")
except arcpy.ExecuteError:
# If any error occurred when running the tool, print the messages
print(arcpy.GetMessages())