イベントまでの推定時間 (Estimate Time to Event) (空間統計)

サマリー

これまでのイベント発生時間に基づいてイベントが発生するまでの時間を予測します。 このツールでは、説明変数を使用して予測を改善し、イベントまでの時間を増減させる変数を特定することができます。

イベントまでの推定時間の仕組みの詳細

イベントまでの推定時間ツールの図

使用法

  • 入力フィーチャまたはテーブルの各オブザベーションには、そのオブザベーションの期間を含むフィールド、イベントがすでに発生したかどうかの指標、および説明変数を含むフィールドが必要です。 これらのフィールドは、それぞれ [期間フィールド][イベント インジケーター フィールド][説明変数] パラメーターで提供されます。 説明変数は連続またはカテゴリで、イベント インジケーターの値は 0 (イベントが発生していない) または 1 (イベントが発生した) のどちらかのみです。 期間フィールドは多くの場合、個体の実際の年齢ですが、一般にはイベントが発生した可能性がある最初の日時から開始され、イベントが発生した日時 (イベントが発生していない場合は現在の日時) で終了します。 たとえば、樹木の寿命を推定するなら、期間フィールドは、樹木が現在生きているなら現在の年齢、または樹木が枯れた年齢にします。 しかし、再逮捕までの時間を推定するなら、このフィールドの値は、個人が収監施設から解放した日時 (再逮捕が発生する可能性がある最初の日時) から、再逮捕の日時 (その人物が再逮捕されていなければ現在の日時) までにします。 期間の単位 (時間、日、年など) を指定する必要はありませんが、すべての結果はその期間単位で解釈する必要があります。

  • 将来のいつイベントが発生するかを予測するのは本質的に困難なタスクなので、現実的な予測を維持することをおすすめします。 ツールは、指定された説明変数からのみ情報を抽出しますが、インフラストラクチャーの崩壊のような複雑な減少には多数の要因が関係し、その多くはごく局所的で、それぞれの個体に固有のものです。 一般に実践では、イベントまでの予測時間を、特定の日付を正確に予測するものではなく、いつイベントが発生するかを大まかに示すものと扱う必要があります。 また、入力データの最大のイベント時刻よりも先まで時間を外挿するときは、特に用心し、懐疑的に扱う必要があります。 イベントまでの時間の分析結果は多くの場合に不正確ですが、将来のコストの大まかな推定を行うためや、イベントを次に経験する可能性が最も高いオブザベーションを優先し、リソースを割り当てるためには非常に有用です。

  • イベントまでの時間のモデルは本質的に空間ではありませんが、空間情報を組み入れ、地理パターンを考慮することで、モデルが改善される場合があります。 地理リージョンなどの空間の説明変数をカテゴリー説明変数として追加したり、主要なフィーチャまでの距離を連続説明変数として追加したりすることを検討します。 たとえば、都市部の樹木の死亡率をモデル化するとき、最も近い建物までの距離は、建物の影による日光の減少があるため、重要な可能性があります。

  • イベントがまだ発生していない観測データは打ち切り観測データと呼ばれ、イベントが発生した観測データは非打ち切り観測データと呼ばれます。 この用語は、非打ち切り観測データには完全な情報がある (イベントが発生するまでの時間がわかっている) のに対し、打ち切り観測データには部分的な情報しかなく、イベントが発生するまでの正確な時間はわからないが、ある程度の時間 (その観測データの現在の期間) より長いことがわかっているという事実によります。

    モデルのパラメーターの推定では、打ち切りと非打ち切りの両方のオブザベーションが使用されますが、非打ち切りオブザベーションは正確な生存時間が判明しているため、より多くの情報が得られます。 一般に、説明変数ごとに最低 10 の非打ち切りオブザベーションがあることが推奨されます。 ただし、カテゴリ変数は複数の変数としてカウントする必要があります。 2 つのカテゴリを持つカテゴリ変数は、1 つの変数とカウントします。3 つのカテゴリは 2 つの変数、4 つのカテゴリは 3 つの変数、以下同様にカウントします。 さらに、カテゴリ変数のすべてのカテゴリについて影響を最適に推定するには、すべてのカテゴリごとにいくつかの非打ち切りオブザベーションが必要です。

  • このツールは、説明変数がイベントの日時にどのような影響を与えているかを把握するため、イベントがいつ起きるのかを予測するため、およびモデルの精度と信頼性を評価するため、数値とグラフィックスでさまざまな出力を生成します。

    ジオプロセシング メッセージに、説明変数の効果とモデルの精度が示されます。 出力フィーチャクラスまたはテーブルには、非打ち切り観測データでイベントがいつ発生するかを予測したフィールドとポップアップ チャートが含まれています。

    ツールの出力とその解釈方法の詳細

パラメーター

ラベル説明データ タイプ
入力フィーチャまたはテーブル

各観測データの期間、説明変数、イベント インジケーターのフィールドが含まれている入力フィーチャまたはテーブル。

Table View
期間フィールド

観測データの期間の数値フィールド。 これは通常は観測データの期間ですが、一般には、イベントが発生しうる最初の瞬間に開始してそのイベントが発生したときに終了する (またはその観測データが打ち切られたときに終了する) までの時間です。 期間の単位 (時間、日、年など) は指定しませんが、すべての結果はその時間単位で解釈する必要があります。 たとえば、期間の値の単位が日の場合、このツールでイベント時間が 2 時間単位後であると予測されたとすると、これは 2 日後を意味します。

Field
イベント インジケーター フィールド

その観測データでイベントが発生したかどうかを示すインジケーターが含まれているフィールド。 このフィールドには値 0 または 1 のみが含まれている必要があります。 値 0 はイベントが発生していない (打ち切り観測データ) ことを示し、値 1 はイベントが発生した (非打ち切り観測データ) ことを示しています。 たとえば、樹木の寿命を推定する場合、値 0 は樹木が生きている (樹木が枯れるというイベントが発生していない) ことを意味し、値 1 は樹木が枯れていることを意味します。

Field
出力フィーチャまたはテーブル

イベントが発生していない観測データでのイベント発生までの予測時間が含まれている出力フィーチャまたはテーブル。

Feature Class; Table
説明変数
(オプション)

イベント発生までの時間の予測に役立つ説明変数を表すフィールドのリスト。 材料タイプや所得階層などのクラスまたはカテゴリを表す変数の場合、[カテゴリ] チェックボックスをオンにします。 連続変数の場合、このチェックボックスはオフのままにします。

Value Table
生存曲線ポップアップの有効化
(オプション)

各出力レコードのポップアップ チャートを生成するかどうかを指定します。 ポップアップ チャートには、各レコードのベースライン生存曲線と、打ち切り観測データでのイベント発生までの追加時間の曲線が表示されます。

  • オン - データセット内の各レコードのポップアップ チャートが生成されます。 これがデフォルトです。
  • オフ - ポップアップ チャートは生成されません。
Boolean

arcpy.stats.EstimateTimeToEvent(in_features, age_field, event_field, out_features, {explanatory_variables}, {enable_survival_curve_popups})
名前説明データ タイプ
in_features

各観測データの期間、説明変数、イベント インジケーターのフィールドが含まれている入力フィーチャまたはテーブル。

Table View
age_field

観測データの期間の数値フィールド。 これは通常は観測データの期間ですが、一般には、イベントが発生しうる最初の瞬間に開始してそのイベントが発生したときに終了する (またはその観測データが打ち切られたときに終了する) までの時間です。 期間の単位 (時間、日、年など) は指定しませんが、すべての結果はその時間単位で解釈する必要があります。 たとえば、期間の値の単位が日の場合、このツールでイベント時間が 2 時間単位後であると予測されたとすると、これは 2 日後を意味します。

Field
event_field

その観測データでイベントが発生したかどうかを示すインジケーターが含まれているフィールド。 このフィールドには値 0 または 1 のみが含まれている必要があります。 値 0 はイベントが発生していない (打ち切り観測データ) ことを示し、値 1 はイベントが発生した (非打ち切り観測データ) ことを示しています。 たとえば、樹木の寿命を推定する場合、値 0 は樹木が生きている (樹木が枯れるというイベントが発生していない) ことを意味し、値 1 は樹木が枯れていることを意味します。

Field
out_features

イベントが発生していない観測データでのイベント発生までの予測時間が含まれている出力フィーチャまたはテーブル。

Feature Class; Table
explanatory_variables
[[Variable, Categorical],...]
(オプション)

イベント発生までの時間の予測に役立つ説明変数を表すフィールドのリスト。 材料タイプや所得階層などのクラスまたはカテゴリを表す変数の場合は CATEGORICAL に設定し、連続変数の場合は NUMERIC に設定します。

Value Table
enable_survival_curve_popups
(オプション)

各出力レコードのポップアップ チャートを生成するかどうかを指定します。 ポップアップ チャートには、各レコードのベースライン生存曲線と、打ち切り観測データでのイベント発生までの追加時間の曲線が表示されます。

  • CREATE_POPUPデータセット内の各レコードのポップアップ チャートが生成されます。 これがデフォルトです。
  • NO_POPUPポップアップ チャートは生成されません。
Boolean

コードのサンプル

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

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

# Estimate the time until an event.
import arcpy
arcpy.env.workspace = r"c:\data\project_data.gdb"
arcpy.stats.EstimateTimeToEvent(
    in_features = r"myFeatureClass",
    age_field = "myAgeField",
    event_field = "myEventField",
    out_features = r"myOutputFeatureClass",
    explanatory_variables = r"cont_var1 false;cont_var2 false;cat_var1 true;cat_var2 true",
    enable_survival_curve_popups = "CREATE_POPUP"
)
EstimateTimeToEvent の例 2 (スタンドアロン スクリプト)

次のスタンドアロン スクリプトで、EstimateTimeToEvent 関数を使用する方法を示します。

# Estimate the time until an event.  

import arcpy 

# Set the current workspace.
arcpy.env.workspace = r"c:\data\project_data.gdb" 

# Run tool
arcpy.stats.EstimateTimeToEvent(
    in_features = r"myFeatureClass",
    age_field = "myAgeField",
    event_field = "myEventField",
    out_features = r"myOutputFeatureClass",
    explanatory_variables = r"cont_var1 false;cont_var2 false;cat_var1 true;cat_var2 true",
    enable_survival_curve_popups = "CREATE_POPUP"
)

# Print the messages.
print(arcpy.GetMessages())

関連トピック