空間的外れ値の検出 (Spatial Outlier Detection) (空間統計)

概要

各フィーチャのローカル外れ値係数 (LOF) を計算してポイント フィーチャ内の空間的外れ値を特定します。空間的な外れ値は異常に分離された場所にあるフィーチャで、その LOF は場所がローカル近傍からどの程度分離されたかを示す計測値です。LOF 値が高いほど、分離度が高いことを示します。また、このツールでは、データの空間分布を考慮して新しいフィーチャを外れ値として分類するかどうかを推定するのに使用できるラスター予測サーフェスを生成することもできます。

[空間的外れ値の検出 (Spatial Outlier Detection)] ツールの詳細

[空間的外れ値の検出 (Spatial Outlier Detection)] ツールの図

使用法

  • このツールでは、[入力フィーチャ] パラメーターで指定されたポイントを空間的外れ値または空間的正常値として特定します。

  • このツールは、LOF 計算を実行し、周辺にあるフィーチャの空間分布に基づいて、ポイント フィーチャがどの程度の外れ値であるかを推定します。

  • このツールは、[近傍数] パラメーターで指定された各フィーチャ周辺のローカル近傍を使用します。

  • [外れ値と見なされる場所の割合] パラメーターを使用すると、LOF の閾値を設定し、各ポイント フィーチャを外れ値または正常値と見なすことができます。

    メモ:

    [外れ値と見なされる場所の割合] パラメーターの値にわずかな差しかないと、外れ値と見なされる出力フィーチャの数が同じになることがあります。この状況は、空間分布でのフィーチャの類似性によって複数のフィーチャの LOF 値が同じになった場合に発生する可能性があります。

  • 出力フィーチャには 2 つのチャートがあります。1 つは、外れ値の数と正常値の数を示すバー チャートです。もう 1 つは、すべてのポイント フィーチャの LOF 値の分布を表示し、フィーチャが外れ値であるか正常値であるかの判別に使用される LOF 閾値を示すヒストグラムです。

  • 入力フィーチャに Shape.Z ジオメトリ属性がある場合、このツールは、3D 空間で空間的外れ値を検出してデータの 3D 特性を優先します。シーン ビューに追加すると、出力フィーチャは 3D で表示されるため、空間的外れ値が 3D で視覚化されます。Shape.Z の単位 (メートルなど) が鉛直座標系で定義されていない場合は、Shape.X および Shape.Y と同じ単位であると見なされます。

  • [出力予測ラスター] パラメーターは、LOF 結果が分析範囲全体の連続サーフェスとして含まれるオプションの出力であり、新しいポイントの LOF 値を再計算せずに、今後の観測データが外れ値であるかどうかを判別するのに使用できます。出力ラスターを作成するために、入力フィーチャがトレーニング データとして使用され、そのトレーニング データの空間分布に基づいて、すべてのラスター セルの中心で LOF 値が計算されます。この出力は 2D 入力フィーチャの場合にのみ生成できます。

    メモ:

    ポイントがラスター セルの中心と一致している場合でも、ポイントの LOF 値は、各ポイントの下にあるラスター セルの LOF 値と一致しません。この理由は、フィーチャがそれ自体を近傍として使用しないためです。ただし、ラスター セルはフィーチャを近傍として使用するので、計算ごとに別々の近傍が使用され、異なる LOF 値が生成されます。

  • ローカル外れ値係数の詳細については、次の資料をご参照ください。

    • Breunig, M. M., Kriegel, H. P., Ng, R. T., Sander, J. (2000). "LOF: identifying density-based local outliers." Proceedings of the 2000 ACM SIGMOD international conference on Management of data。(pp. 93-104).

構文

arcpy.stats.SpatialOutlierDetection(in_features, output_features, {n_neighbors}, {percent_outlier}, {output_raster})
パラメーター説明データ タイプ
in_features

空間的外れ値検出モデルの構築に使用するポイント フィーチャ。各ポイントは、そのローカル外れ値係数に基づいて、外れ値または正常値として分類されます。

Feature Layer
output_features

各入力フィーチャのローカル外れ値係数と、ポイントが空間的外れ値かどうかを示すインジケーターを含む出力フィーチャクラス。

Feature Class
n_neighbors
(オプション)

ローカル外れ値係数の計算に含める近傍の数。入力ポイントに最も近いフィーチャが近傍として使用されます。デフォルトは 20 です。

Long
percent_outlier
(オプション)

ローカル外れ値係数の閾値を定義することで空間的外れ値として特定される場所の割合。値を指定しないと、値が実行時に推定され、ジオプロセシング メッセージとして表示されます。

Double
output_raster
(オプション)

セルごとに、入力フィーチャの空間分布に基づいて計算されるローカル外れ値係数を含む出力ラスター。

Raster Dataset

コードのサンプル

SpatialOutlierDetection (空間的外れ値の検出) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、SpatialOutlierDetectionツールの使用方法を示しています。

arcpy.stats.SpatialOutlierDetection("Transaction_Locations", 
            "Transactions_SpatialOutliers", 20, 5, 
            "Transactions_OutliersPredictionSurface")
SpatialOutlierDetection (空間的外れ値の検出) の例 2 (スタンドアロン スクリプト)

次のスタンドアロン Python スクリプトは、SpatialOutlierDetection ツールの使用方法を示しています。

# Import system modules.
import arcpy
try:
    # Set the workspace and input features.
    arcpy.env.workspace = 'C:\\SpatialOutlierDetection\\MyData.gdb'
    inputFeatures = "PM25_AirQualityStations"
    # Set the name of the output features
    outputFeatures = "AirQualityStations_SpatialOutliers"
    # Set the number of neighbors
    numberNeighbors = 8
    # Set the percentage of locations considered outliers
    pcntLocationsAsOutliers = 10
    # Set the output prediction raster
    outputPredictionRaster = airQualityStations_OutPredictionRaster
    # Run the Spatial Outlier Detection tool
    arcpy.stats.SpatialOutlierDetection(inputFeatures, outputFeatures, 
            numberNeighbors, pcntLocationsAsOutliers, outputPredictionRaster)
except arcpy.ExecuteError:
    # If an error occurred when running the tool, print the error message.
    print(arcpy.GetMessages())

環境

セル サイズ

この環境は出力ラスターにのみ影響を与えます。

マスク

この環境は出力ラスターにのみ影響を与えます。

スナップ対象ラスター

この環境は出力ラスターにのみ影響を与えます。

範囲

この環境は出力ラスターにのみ影響を与えます。

ライセンス情報

  • Basic: 制限付き
  • Standard: 制限付き
  • Advanced: 制限付き

関連トピック