スライス (Slice) (3D Analyst)

サマリー

入力セルの値の範囲を、ゾーン (クラス) に切り直すか再分類します。 使用可能なデータ分類方法には、等間隔、等面積 (等量)、自然分類、指定間隔、標準偏差 (平均値中心化)、標準偏差 (区切りとしての平均値)、指定間隔、および等比間隔があります。

使用法

  • [スライス手法] パラメーターでは、次のオプションを利用できます。 これらによって異なる特性を持つ出力ゾーンが生成されます。

    • [等面積] - それぞれのゾーンにほぼ同じ数のセルが含まれるように、定義した数のゾーンが出力ラスターに生成されます。
    • [等間隔] - それぞれのゾーンに等しい値の範囲が含まれるように、定義した数のゾーンが出力ラスターに生成されます。
    • [自然分類] および [等比間隔] - それぞれのゾーンにクラスの閾値で決定した数のセルが含まれるように、指定した数のゾーンが出力ラスターに生成されます。
    • [標準偏差 (平均値中心化)][標準偏差 (区切りとしての平均値)][指定間隔] - それぞれのゾーンにクラスの閾値で決定した数のセルが含まれるように、[間隔サイズ] で決定した数のゾーンが出力ラスターに生成されます。

  • 指定したスライス手法に応じて、[出力ゾーン数] パラメーター値または [間隔サイズ] パラメーター値のいずれかを指定する必要があります。

    • スライス手法が [等面積][等間隔][自然分類]、または [等比間隔] の場合は、[出力ゾーン数] パラメーターが必要です。
    • スライス手法が [指定間隔][標準偏差 (平均値中心化)]、または [標準偏差 (区切りとしての平均値)] の場合は、[間隔サイズ] パラメーターが必要です。

  • [出力で NoData を値に変更] パラメーターを使用して、NoData の値を出力の整数値に置き換えることができます。 NoData のセルが出力ゾーンと結合しないようにする必要がある場合は、想定される出力ゾーンの範囲外にある整数値を指定します。 たとえば、出力ゾーンの範囲が 1 ~ 5 の場合、1 未満の値または 5 より大きい値を指定します。 候補となる値には、0、100、-99 などが含まれます。 NoData 値を既存のゾーンにマージするには、そのゾーンの整数値を使用します。 このパラメーターが設定されていない場合、入力の NoData セルは出力ラスターで NoData のままになります。

パラメーター

ラベル説明データ タイプ
入力ラスター

再分類対象の入力ラスター。

Raster Layer
出力ラスター

出力再分類ラスター。

出力は常に整数タイプになります。

出力ラスターの属性テーブルには、標準の ObjectIDValueCount フィールドに加えて、新しく 2 つのフィールドが含まれます。 Value フィールドはクラス値を示します。 ZoneMin および ZoneMax フィールドにはそれぞれ最小値と最大値が記録され、クラスの生成に使用されます。

Raster Dataset
出力ゾーン数
(オプション)

入力ラスターを再分類するゾーンの数。

[スライス手法] パラメーター値が [等面積][等間隔][自然分類]、または [等比間隔] の場合、このパラメーターが必要です。

[スライス手法] パラメーター値が [指定間隔][標準偏差 (平均値中心化)]、または [標準偏差 (区切りとしての平均値)] の場合、[出力ゾーン数] パラメーターは無効になります。 出力ゾーン数は [間隔サイズ] パラメーター値によって決定されます。

Long
スライス手法
(オプション)

入力ラスターをゾーンに再分類する方法を指定します。

  • 等間隔入力値の範囲が指定された出力ゾーン数に均等に分割され、クラス閾値が決まります。 これがデフォルトです。
  • 等面積分類入力セル数が指定された出力ゾーン数に均等に分割され、クラス閾値が決まります。 各ゾーンにはほぼ同数のセルが含まれ、ほぼ同じ面積であることを示します。
  • 自然分類クラス閾値は、クラス内の分散を最小化し、クラス間の分散を最大化する方法で決定されます。 通常は、データ値が比較的大きく変化する部分に閾値が設定されます。
  • 標準偏差 (平均値中心化)クラス閾値は、入力ラスターの最小値と最大値に到達するまで、平均値の上下に、標準偏差の単位で指定された間隔サイズ (2、1、または 0.5 など) で配置されます。 平均値は閾値として使用されず、2 つのクラス閾値によって中央配置されます。 1 つの閾値は平均値の上の指定された間隔サイズの半分の位置にあり、もう 1 つの閾値は平均値の下に指定された間隔サイズの半分の位置にあります。 標準偏差は n-1 分母を使用して計算され、この n は値のピクセル数を示します。
  • 標準偏差 (区切りとしての平均値)平均値がクラス閾値として使用されます。 その他のクラス閾値は、入力ラスターの最小値と最大値に到達するまで、平均値の上下に、標準偏差の単位で指定された間隔サイズ (2、1、または 0.5 など) で配置されます。 標準偏差は n-1 分母を使用して計算され、この n は値のピクセル数を示します。
  • 指定間隔分類クラス閾値は 0 (ゼロ) と、0 を基準に指定された間隔サイズの倍数に設定されます。 これらは、最初と最後のクラスの入力データの最小値と最大値にクリップされます。 0 を含む値範囲では、0 は常にブレーク ポイントとして含まれます。
  • 幾何補正間隔クラス閾値は、等比級数を持つクラス間隔に基づいて作成されます。 これは、現在の値が、前の値をジオメトリック係数の除算したものと等しくなるというパターンになります。 この分類法におけるジオメトリック係数を (逆数に) 変更して、クラスの範囲を最適化することができます。 このアルゴリズムは、各クラスの要素数の二乗和を最小化することで、これらの幾何学的間隔を作成します。 これにより、各クラスにはほぼ同じ数の値が含まれ、間隔ごとの差が一定に保たれます。
String
出力の開始値
(オプション)

出力ラスター データセットのゾーン (クラス) に使用される開始値です。

クラスには整数値が割り当てられ、開始値から 1 ずつ増加します。

デフォルトの開始値は 1 です。

Long
出力で NoData を値に変更
(オプション)

出力で NoData を値に置き換えます。

このパラメーターが設定されていない場合、NoData セルは出力ラスターで NoData のままになります。

Long
間隔サイズ
(オプション)

クラス間の間隔のサイズです。

[スライス手法] パラメーターが [指定間隔][標準偏差 (平均値中心化)]、または [標準偏差 (区切りとしての平均値)] に設定されている場合、このパラメーターが必要です。

[指定間隔] を使用する場合、間隔サイズは、クラス閾値の計算に使用するクラスの実際の値範囲を示します。

[標準偏差 (平均値中心化)] または [標準偏差 (区切りとしての平均値)] を使用する場合、間隔サイズは、クラス閾値の計算に使用する標準偏差の数値を示します。

Double

戻り値

ラベル説明データ タイプ
出力ラスター

出力再分類ラスター。

出力は常に整数タイプになります。

出力ラスターの属性テーブルには、標準の ObjectIDValueCount フィールドに加えて、新しく 2 つのフィールドが含まれます。 Value フィールドはクラス値を示します。 ZoneMin および ZoneMax フィールドにはそれぞれ最小値と最大値が記録され、クラスの生成に使用されます。

Raster

arcpy.ddd.Slice(in_raster, out_raster, {number_zones}, {slice_type}, {base_output_zone}, {nodata_to_value}, {class_interval_size})
名前説明データ タイプ
in_raster

再分類対象の入力ラスター。

Raster Layer
out_raster

出力再分類ラスター。

出力は常に整数タイプになります。

出力ラスターの属性テーブルには、標準の ObjectIDValueCount フィールドに加えて、新しく 2 つのフィールドが含まれます。 Value フィールドはクラス値を示します。 ZoneMin および ZoneMax フィールドにはそれぞれ最小値と最大値が記録され、クラスの生成に使用されます。

Raster Dataset
number_zones
(オプション)

入力ラスターを再分類するゾーンの数。

このパラメーターは、slice_type パラメーター値が EQUAL_AREAEQUAL_INTERVALNATURAL_BREAKS、または GEOMETRIC_INTERVAL の場合に必須です。

slice_type パラメーター値が STANDARD_DEVIATION_MEAN_CENTEREDSTANDARD_DEVIATION_MEAN_BREAK、または DEFINED_INTERVAL の場合、number_zones パラメーターはサポートされません。 出力ゾーン数は class_interval_size パラメーター値によって決定されます。

Long
slice_type
(オプション)

入力ラスターをゾーンに再分類する方法を指定します。

  • EQUAL_INTERVAL入力値の範囲が指定された出力ゾーン数に均等に分割され、クラス閾値が決まります。 これがデフォルトです。
  • EQUAL_AREA入力セル数が指定された出力ゾーン数に均等に分割され、クラス閾値が決まります。 各ゾーンにはほぼ同数のセルが含まれ、ほぼ同じ面積であることを示します。
  • NATURAL_BREAKSクラス閾値は、クラス内の分散を最小化し、クラス間の分散を最大化する方法で決定されます。 通常は、データ値が比較的大きく変化する部分に閾値が設定されます。
  • STANDARD_DEVIATION_MEAN_CENTEREDクラス閾値は、入力ラスターの最小値と最大値に到達するまで、平均値の上下に、標準偏差の単位で指定された間隔サイズ (2、1、または 0.5 など) で配置されます。 平均値は閾値として使用されず、2 つのクラス閾値によって中央配置されます。 1 つの閾値は平均値の上の指定された間隔サイズの半分の位置にあり、もう 1 つの閾値は平均値の下に指定された間隔サイズの半分の位置にあります。 標準偏差は n-1 分母を使用して計算され、この n は値のピクセル数を示します。
  • STANDARD_DEVIATION_MEAN_BREAK平均値がクラス閾値として使用されます。 その他のクラス閾値は、入力ラスターの最小値と最大値に到達するまで、平均値の上下に、標準偏差の単位で指定された間隔サイズ (2、1、または 0.5 など) で配置されます。 標準偏差は n-1 分母を使用して計算され、この n は値のピクセル数を示します。
  • DEFINED_INTERVALクラス閾値は 0 (ゼロ) と、0 を基準に指定された間隔サイズの倍数に設定されます。 これらは、最初と最後のクラスの入力データの最小値と最大値にクリップされます。 0 を含む値範囲では、0 は常にブレーク ポイントとして含まれます。
  • GEOMETRIC_INTERVALクラス閾値は、等比級数を持つクラス間隔に基づいて作成されます。 これは、現在の値が、前の値をジオメトリック係数の除算したものと等しくなるというパターンになります。 この分類法におけるジオメトリック係数を (逆数に) 変更して、クラスの範囲を最適化することができます。 このアルゴリズムは、各クラスの要素数の二乗和を最小化することで、これらの幾何学的間隔を作成します。 これにより、各クラスにはほぼ同じ数の値が含まれ、間隔ごとの差が一定に保たれます。
String
base_output_zone
(オプション)

出力ラスター データセットのゾーン (クラス) に使用される開始値です。

クラスには整数値が割り当てられ、開始値から 1 ずつ増加します。

デフォルトの開始値は 1 です。

Long
nodata_to_value
(オプション)

出力で NoData を値に置き換えます。

このパラメーターが設定されていない場合、NoData セルは出力ラスターで NoData のままになります。

Long
class_interval_size
(オプション)

クラス間の間隔のサイズです。

このパラメーターは、slice_type パラメーターが DEFINED_INTERVALSTANDARD_DEVIATION_MEAN_CENTERED、または STANDARD_DEVIATION_MEAN_BREAK に設定されている場合に必須です。

DEFINED_INTERVAL を使用する場合、間隔サイズは、クラス閾値の計算に使用するクラスの実際の値範囲を示します。

STANDARD_DEVIATION_MEAN_CENTERED または STANDARD_DEVIATION_MEAN_BREAK を使用する場合、間隔サイズは、クラス閾値の計算に使用する標準偏差の数値を示します。

Double

戻り値

名前説明データ タイプ
out_raster

出力再分類ラスター。

出力は常に整数タイプになります。

出力ラスターの属性テーブルには、標準の ObjectIDValueCount フィールドに加えて、新しく 2 つのフィールドが含まれます。 Value フィールドはクラス値を示します。 ZoneMin および ZoneMax フィールドにはそれぞれ最小値と最大値が記録され、クラスの生成に使用されます。

Raster

コードのサンプル

Slice (スライス) の例 1 (Python ウィンドウ)

入力ラスターを、データに内在する自然なグループに基づいて 5 つのクラスに再分類します。

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"

outslice = Slice("elevation", 5, "NATURAL_BREAKS")
outslice.save("C:/sapyexamples/output/elev_slice.tif")
Slice (スライス) の例 2 (Python ウィンドウ)

入力ラスターを、指定間隔を 10 にして再分類します。

# Name: Slice_Ex_02.py
# Description: Slices a range of values of the input cells of a raster by
#    zones of equal interval or equal area.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "elevation"
numberZones = 10
baseOutputZone = 5

# Execute Slice
outSlice = Slice(inRaster, numberZones, "NATURAL_BREAKS", baseOutputZone) 

# Save the output 
outSlice.save("C:/sapyexamples/output/outslice")
Slice (スライス) の例 3 (スタンドアロン スクリプト)

入力ラスターを、データに内在する自然なグループに基づいて 10 のクラスに再分類し、出力クラスの開始値を -5 に指定します。

# Name: Slice_Ex_03.py
# Description: Slices the input raster into 10 zones(classes) based on natural groupings inherent in the data.
#              Specify the starting value for output classes to be -5.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "elevation"
numberZones = 10
baseOutputZone = -5

# Execute Slice
outSlice = Slice(inRaster, numberZones, "NATURAL_BREAKS", baseOutputZone)

# Save the output
outSlice.save("C:/sapyexamples/output/elev_slice_03.tif")
Slice (スライス) の例 4 (スタンドアロン スクリプト)

入力ラスターを、10 の等面積のクラスに再分類します。 出力に -99 の値を含むように NoData セルを割り当てます。

# Name: Slice_Ex_04.py
# Description: Slices the input raster into 10 zones(classes) based on equal area.
#              Assign NoData cells to have a value of -99 in the output.
# Requirements: Spatial Analyst Extension

# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Set environment settings
env.workspace = "C:/sapyexamples/data"

# Set local variables
inRaster = "elevation"
numberZones = 10
baseOutputZone = 5
nodataToValue = -99
classIntervalSize = "" # or None

# Execute Slice
outSlice = Slice(inRaster, numberZones, "EQUAL_AREA", baseOutputZone, nodataToValue, classIntervalSize)

# Save the output
outSlice.save("C:/sapyexamples/output/elev_slice_04.tif")
Slice (スライス) の例 1 (Python ウィンドウ)

入力ラスターを、データに内在する自然なグループに基づいて 5 つのクラスに再分類します。

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.ddd.Slice("elevation", "c:/output/elev_slice.tif", 5, "NATURAL_BREAKS")
Slice (スライス) の例 2 (Python ウィンドウ)

入力ラスターを、指定間隔を 10 にして再分類します。

# Name: Slice_3d_Ex_02.py
# Description: Slices a range of values of the input cells of a raster by
#    zones of equal interval or equal area.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "elevation"
outRaster = "C:/output/outslice"
numberZones = 10
baseOutputZone = 5

# Execute Slice
arcpy.ddd.Slice(inRaster, outRaster, numberZones, "NATURAL_BREAKS", 
               baseOutputZone)
Slice (スライス) の例 3 (スタンドアロン スクリプト)

入力ラスターを、データに内在する自然なグループに基づいて 10 のクラスに再分類し、出力クラスの開始値を -5 に指定します。

# Name: Slice_3d_Ex_03.py
# Description: Slices the input raster into 10 zones(classes) based on natural groupings inherent in the data
#              Specify the starting value for output classes to be -5.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "elevation"
outRaster = "C:/output/elev_slice_03.tif"
numberZones = 10
baseOutputZone = -5

# Execute Slice
arcpy.ddd.Slice(inRaster, outRaster, numberZones, "NATURAL_BREAKS", baseOutputZone)
Slice (スライス) の例 4 (スタンドアロン スクリプト)

入力ラスターを、10 の等面積のクラスに再分類します。 出力に -99 の値を含むように NoData セルを割り当てます。

# Name: Slice_3d_Ex_04.py
# Description: Slices the input raster into 10 zones(classes) based on equal area.
#              Assign NoData cells to have a value of -99 in the output.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "elevation"
outRaster = "C:/output/elev_slice_04.tif"
numberZones = 10
baseOutputZone = 5
nodataToValue = -99
classIntervalSize = "" # or None

# Execute Slice
arcpy.ddd.Slice(inRaster, outRaster, numberZones, "EQUAL_AREA", baseOutputZone, nodataToValue, classIntervalSize)

関連トピック