Available with Geostatistical Analyst license.
Summary
Empirical Bayesian kriging is an interpolation method that accounts for the error in estimating the underlying semivariogram through repeated simulations.
Usage
This kriging method can handle moderately nonstationary input data.
Only Standard Circular and Smooth Circular Search neighborhoods are allowed for this interpolation method.
The Smooth Circular option for Search neighborhood will substantially increase the execution time.
The larger the Maximum number of points in each local model and Local model overlap factor values, the longer the execution time. Applying a Data transformation will also significantly increase execution time.
To avoid running out of memory, the software may limit the number of CPU cores that can be used for parallel processing. The maximum number of cores that can be used will be determined based on the subset size, the semivariogram model type, the operating system of your computer, and whether the tool is run with 32-bit or 64-bit processing. By installing the Background Geoprocessing (64 bit) product and enabling background geoprocessing, you may be able to successfully run the tool.
If the input data is in a geographic coordinate system, all distances will be calculated using chordal distances. For more information on chordal distances, see the Distance calculations for data in geographic coordinates section of the on the What is Empirical Bayesian Kriging help topic.
Syntax
arcpy.ga.EmpiricalBayesianKriging(in_features, z_field, {out_ga_layer}, {out_raster}, {cell_size}, {transformation_type}, {max_local_points}, {overlap_factor}, {number_semivariograms}, {search_neighborhood}, {output_type}, {quantile_value}, {threshold_type}, {probability_threshold}, {semivariogram_model_type})
Parameter | Explanation | Data Type |
in_features | The input point features containing the z-values to be interpolated. | Feature Layer |
z_field | Field that holds a height or magnitude value for each point. This can be a numeric field or the Shape field if the input features contain z-values or m-values. | Field |
out_ga_layer (Optional) | The geostatistical layer produced. This layer is required output only if no output raster is requested. | Geostatistical Layer |
out_raster (Optional) | The output raster. This raster is required output only if no output geostatistical layer is requested. | Raster Dataset |
cell_size (Optional) | The cell size at which the output raster will be created. This value can be explicitly set under Raster Analysis from the Environment Settings. If not set, it is the shorter of the width or the height of the extent of the input point features, in the input spatial reference, divided by 250. | Analysis Cell Size |
transformation_type (Optional) | Type of transformation to be applied to the input data.
| String |
max_local_points (Optional) | The input data will automatically be divided into groups that do not have more than this number of points. | Long |
overlap_factor (Optional) | A factor representing the degree of overlap between local models (also called subsets). Each input point can fall into several subsets, and the overlap factor specifies the average number of subsets that each point will fall into. A high value of the overlap factor makes the output surface smoother, but it also increases processing time. Typical values vary between 0.01 and 5. | Double |
number_semivariograms (Optional) | The number of simulated semivariograms of each local model. | Long |
search_neighborhood (Optional) | Defines which surrounding points will be used to control the output. Standard Circular is the default. The following are Search Neighborhood classes: SearchNeighborhoodStandardCircular and SearchNeighborhoodSmoothCircular. Standard Circular
Smooth Circular
| Geostatistical Search Neighborhood |
output_type (Optional) | Surface type to store the interpolation results. For more information about the output surface types, see What output surface types can the interpolation models generate?
| String |
quantile_value (Optional) | The quantile value for which the output raster will be generated. | Double |
threshold_type (Optional) | Specifies whether to calculate the probability of exceeding or not exceeding the specified threshold.
| String |
probability_threshold (Optional) | The probability threshold value. If left empty, the median (50th quantile) of the input data will be used. | Double |
semivariogram_model_type (Optional) |
The semivariogram model that will be used for the interpolation.
The available choices depend on the value of the transformation_type parameter. If the transformation type is set to NONE, only the first three semivariograms are available. If the type is EMPIRICAL or LOGEMPIRICAL, the last six semivariograms are available. For more information about choosing an appropriate semivariogram for your data, see the topic What is Empirical Bayesian Kriging. | String |
Code sample
EmpiricalBayesianKriging example 1 (Python window)
Interpolate a series of point features onto a raster.
import arcpy
arcpy.EmpiricalBayesianKriging_ga("ca_ozone_pts", "OZONE", "outEBK", "C:/gapyexamples/output/ebkout",
10000, "NONE", 50, 0.5, 100,
arcpy.SearchNeighborhoodStandardCircular(300000, 0, 15, 10, "ONE_SECTOR"),
"PREDICTION", "", "", "", "LINEAR")
EmpiricalBayesianKriging example 2 (stand-alone script)
Interpolate a series of point features onto a raster.
# Name: EmpiricalBayesianKriging_Example_02.py
# Description: Bayesian kriging approach whereby many models created around the
# semivariogram model estimated by the restricted maximum likelihood algorithm is used.
# Requirements: Geostatistical Analyst Extension
# Author: Esri
# Import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = "C:/gapyexamples/data"
# Set local variables
inPointFeatures = "ca_ozone_pts.shp"
zField = "ozone"
outLayer = "outEBK"
outRaster = "C:/gapyexamples/output/ebkout"
cellSize = 10000.0
transformation = "EMPIRICAL"
maxLocalPoints = 50
overlapFactor = 0.5
numberSemivariograms = 100
# Set variables for search neighborhood
radius = 300000
smooth = 0.6
searchNeighbourhood = arcpy.SearchNeighborhoodSmoothCircular(radius, smooth)
outputType = "PREDICTION"
quantileValue = ""
thresholdType = ""
probabilityThreshold = ""
semivariogram = "K_BESSEL"
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Execute EmpiricalBayesianKriging
arcpy.EmpiricalBayesianKriging_ga(inPointFeatures, zField, outLayer, outRaster,
cellSize, transformation, maxLocalPoints, overlapFactor, numberSemivariograms,
searchNeighbourhood, outputType, quantileValue, thresholdType, probabilityThreshold,
semivariogram)
Environments
Licensing information
- Basic: Requires Geostatistical Analyst
- Standard: Requires Geostatistical Analyst
- Advanced: Requires Geostatistical Analyst