Empirical Bayesian Kriging 3D (Geostatistical Analyst)

Available with Geostatistical Analyst license.

Summary

Interpolates 3D points using Empirical Bayesian Kriging methodology. All points must have x-, y-, and z-coordinates and a measured value to be interpolated. The output is a 3D geostatistical layer that calculates and renders itself as a 2D transect at a given elevation. The elevation of the layer can be changed using the range slider, and the layer will update to show the interpolated predictions for the new elevation.

3D interpolation has the following potential applications:

  • Oceanographers can create maps of dissolved oxygen and salinity at various depths in the ocean.
  • Atmospheric scientists can create models for pollution and greenhouse gasses throughout the atmosphere.
  • Geologists can predict subsurface geologic properties such as mineral concentrations and porosity.

Learn more about Empirical Bayesian Kriging 3D

Illustration

Empirical Bayesian Kriging 3D tool illustration
Interpolated 3D points are shown.

Usage

  • The input features can be provided in the following ways:

    • 3D point features with elevations stored as a geometry attribute in Shape.Z
    • 2D point features with elevations stored in an attributed field

    It is recommended that you provide 3D point features because all units and unit conversions can be done automatically. You can convert 2D point features with an elevation field into 3D point features using the Feature To 3D By Attribute tool.

  • Geostatistical layers in 3D can be visualized as voxel layers using the GA Layer 3D To NetCDF tool. They can also predict to target points in 3D as well as be exported to rasters and feature contours at any elevation. Multiple rasters at different elevations can also be simultaneously exported and saved as a multidimensional raster dataset.

  • All input features must be in a projected coordinate system. If the points are stored in a geographic coordinate system with latitude and longitude coordinates, they must be projected using the Project tool before using this tool.

  • A Standard3D search neighborhood is used to calculate predictions. All distances that are used to find neighbors will be calculated in the stretched coordinate system after the Elevation inflation factor parameter value has been applied. See Horizontal and vertical change in data values for more information.

Parameters

LabelExplanationData Type
Input features

The input point features containing the field that will be interpolated.

Feature Layer
Elevation field

The field of the input features containing the elevation value of each input point.

If the elevation values are stored as geometry attributes in Shape.Z, it is recommended that you use that field. If the elevation values are stored in an attribute field, the elevation values must indicate distance from mean sea level. Positive values indicate distance above sea level, and negative values indicate distance below sea level.

Field
Value field

The field of the input features containing the measured values that will be interpolated.

Field
Output geostatistical layer

The output geostatistical layer that will display the interpolation result.

Geostatistical Layer
Elevation field units
(Optional)

The units of the elevation field.

If Shape.Z is provided as the elevation field, the units will automatically match the z-units of the vertical coordinate system.

  • US Survey InchesElevations are in U.S. survey inches.
  • US Survey FeetElevations are in U.S. survey feet.
  • US Survey YardsElevations are in U.S. survey yards.
  • US Survey MilesElevations are in U.S. survey miles.
  • US Survey Nautical MilesElevations are in U.S. survey nautical miles.
  • MillimetersElevations are in millimeters.
  • CentimetersElevations are in centimeters.
  • DecimetersElevations are in decimeters.
  • MetersElevations are in meters.
  • KilometersElevations are in kilometers.
  • International InchesElevations are in international inches.
  • International FeetElevations are in international feet.
  • International YardsElevations are in international yards.
  • Statute MilesElevations are in statute miles.
  • International Nautical MilesElevations are in international nautical miles.
String
Measurement error field
(Optional)

The field of the input features containing measurement error values for each point. The value should correspond to one standard deviation of the measured value of each point. Use this field if the measurement error values are not the same at each point.

A common source of nonconstant measurement error is when the data is measured with different devices. One device may be more precise than another, which means that it will have a smaller measurement error. For example, a thermometer rounds to the nearest degree and another thermometer rounds to the nearest tenth of a degree. The variability of measurements is often provided by the manufacturer of the measuring device, or it may be known from empirical practice.

Leave this parameter empty if there are no measurement error values or the measurement error values are unknown.

Field
Semivariogram model type
(Optional)

The semivariogram model that will be used for the interpolation.

  • PowerThe Power semivariogram model will be used.
  • LinearThe Linear semivariogram model will be used.
  • Thin Plate SplineThe Thin Plate Spline semivariogram model will be used.
  • ExponentialThe Exponential semivariogram model will be used.
  • WhittleThe Whittle semivariogram model will be used.
  • K-BesselThe K-Bessel semivariogram model will be used.
String
Transformation type
(Optional)

The type of transformation that will be applied to the input features.

  • NoneNo transformation will be applied. This is the default.
  • EmpiricalMultiplicative Skewing transformation with Empirical base function will be applied.
  • Log empiricalMultiplicative Skewing transformation with Log Empirical base function will be applied. All data values must be positive. If this option is chosen, all predictions will be positive.
String
Subset size
(Optional)

The size of the subset. The input data will automatically be divided into subsets before processing. This parameter controls the number of points that will be in each subset.

Long
Local model area 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 into which each point will fall. A high value of the overlap factor produces a smoother output surface, but it also increases processing time. Values must be between 1 and 5. The actual overlap that will be used will usually be larger than this value, so each subset will contain the same number of points.

Double
Number of simulated semivariograms
(Optional)

The number of simulated semivariograms that will be used for each local model.

Using more simulations will make the model calculations more stable, but the model will take longer to calculate.

Long
Order of trend removal
(Optional)

Specifies the order of trend removal in the vertical direction.

For most 3D data, the values of the points change faster vertically than horizontally. Removing trend in the vertical direction will help alleviate this and stabilize calculations.

  • NoneVertical trend will not be removed. This is the default.
  • First orderFirst order vertical trend will be removed.
String
Elevation inflation factor
(Optional)

A constant value that is multiplied by the Elevation field value prior to subsetting and model estimation. For most 3D data, the values of the points change faster vertically than horizontally, and this factor stretches the locations of the points so that one unit of distance vertically is statistically equivalent to one unit of distance horizontally. The locations of the points will be moved back to their original locations before returning the result of the interpolation. This correction is needed to accurately estimate the semivariogram model as well as the correct neighbors for the Search neighborhood parameter. The elevation inflation factor is unitless and will provide the same results regardless of the units of the x-, y-, or z-coordinate of the input points.

If no value is provided for this parameter, one will be calculated at run time using a maximum likelihood estimation. The value will be printed as a geoprocessing message. The value calculated at run time will be between 1 and 1000. However, you can provide values between 0.01 and 1,000,000. If the calculated value is equal to 1 or 1000, you can provide values outside that range and choose a value based on cross validation.

Double
Search neighborhood
(Optional)

Specifies the number and orientation of the neighbors that will be used to predict values at new locations.

Standard3D

  • Max neighbors—The maximum number of neighbors per sector that will be used to estimate the value at the unknown location.
  • Min neighbors—The minimum number of neighbors per sector that will be used to estimate the value at the unknown location.
  • Sector type—The geometry of the 3D neighborhood. Sectors are used to ensure that neighbors are used in every direction around the prediction location. All sector types are formed from the Platonic solids.
    • 1 Sector (Sphere)—The closest neighbors from any direction will be used.
    • 4 Sector (Tetrahedron)—Space will be divided into 4 regions, and neighbors will be used in each of the 4 regions.
    • 6 Sector (Cube)—Space will be divided into 6 regions, and neighbors will be used in each of the 6 regions.
    • 8 Sector (Octahedron)—Space will be divided into 8 regions, and neighbors will be used in each of the 8 regions.
    • 12 Sector (Dodecahedron)—Space will be divided into 12 regions, and neighbors will be used in each of the 12 regions.
    • 20 Sector (Icosahedron)—Space will be divided into 20 regions, and neighbors will be used in each of the 20 regions.
  • Radius—The length of the radius of the search neighborhood.
Geostatistical Search Neighborhood
Default output elevation
(Optional)

The default elevation of the Output geostatistical layer parameter value.

The geostatistical layer will draw as a horizontal surface at a given elevation, and this parameter specifies this elevation. After it's created, the elevation of the geostatistical layer can be changed using the range slider.

Double
Output surface type
(Optional)

Surface type to store the interpolation results.

  • PredictionPrediction surfaces are produced from the interpolated values.
  • Standard error of prediction Standard Error surfaces are produced from the standard errors of the interpolated values.
  • ProbabilityThe output surface will be probability surfaces of values exceeding or not exceeding a certain threshold.
  • QuantileThe output surface will be quantile surfaces predicting the specified quantile of the prediction distribution.
String
Quantile value
(Optional)

The quantile value for which the output layer will be generated.

Double
Probability threshold type
(Optional)

Specifies whether to calculate the probability that a value exceeds or does not exceed the specified threshold.

  • ExceedThe probability that the value exceeds the threshold will be calculated. This is the default.
  • Not exceedThe probability that the value does not exceed the threshold will be calculated.
String
Probability threshold
(Optional)

The probability threshold value. If no value is provided, the median (50th quantile) of the input data will be used.

Double

arcpy.ga.EmpiricalBayesianKriging3D(in_features, elevation_field, value_field, out_ga_layer, {elevation_units}, {measurement_error_field}, {semivariogram_model_type}, {transformation_type}, {subset_size}, {overlap_factor}, {number_simulations}, {trend_removal}, {elev_inflation_factor}, {search_neighborhood}, {output_elevation}, {output_type}, {quantile_value}, {threshold_type}, {probability_threshold})
NameExplanationData Type
in_features

The input point features containing the field that will be interpolated.

Feature Layer
elevation_field

The field of the input features containing the elevation value of each input point.

If the elevation values are stored as geometry attributes in Shape.Z, it is recommended that you use that field. If the elevation values are stored in an attribute field, the elevation values must indicate distance from mean sea level. Positive values indicate distance above sea level, and negative values indicate distance below sea level.

Field
value_field

The field of the input features containing the measured values that will be interpolated.

Field
out_ga_layer

The output geostatistical layer that will display the interpolation result.

Geostatistical Layer
elevation_units
(Optional)

The units of the elevation field.

If Shape.Z is provided as the elevation field, the units will automatically match the z-units of the vertical coordinate system.

  • INCHElevations are in U.S. survey inches.
  • FOOTElevations are in U.S. survey feet.
  • YARDElevations are in U.S. survey yards.
  • MILE_USElevations are in U.S. survey miles.
  • NAUTICAL_MILEElevations are in U.S. survey nautical miles.
  • MILLIMETERElevations are in millimeters.
  • CENTIMETERElevations are in centimeters.
  • DECIMETERElevations are in decimeters.
  • METERElevations are in meters.
  • KILOMETERElevations are in kilometers.
  • INCH_INTElevations are in international inches.
  • FOOT_INTElevations are in international feet.
  • YARD_INTElevations are in international yards.
  • MILE_INTElevations are in statute miles.
  • NAUTICAL_MILE_INTElevations are in international nautical miles.
String
measurement_error_field
(Optional)

The field of the input features containing measurement error values for each point. The value should correspond to one standard deviation of the measured value of each point. Use this field if the measurement error values are not the same at each point.

A common source of nonconstant measurement error is when the data is measured with different devices. One device may be more precise than another, which means that it will have a smaller measurement error. For example, a thermometer rounds to the nearest degree and another thermometer rounds to the nearest tenth of a degree. The variability of measurements is often provided by the manufacturer of the measuring device, or it may be known from empirical practice.

Leave this parameter empty if there are no measurement error values or the measurement error values are unknown.

Field
semivariogram_model_type
(Optional)

The semivariogram model that will be used for the interpolation.

  • POWERThe Power semivariogram model will be used.
  • LINEARThe Linear semivariogram model will be used.
  • THIN_PLATE_SPLINEThe Thin Plate Spline semivariogram model will be used.
  • EXPONENTIALThe Exponential semivariogram model will be used.
  • WHITTLEThe Whittle semivariogram model will be used.
  • K_BESSELThe K-Bessel semivariogram model will be used.
String
transformation_type
(Optional)

The type of transformation that will be applied to the input features.

  • NONENo transformation will be applied. This is the default.
  • EMPIRICALMultiplicative Skewing transformation with Empirical base function will be applied.
  • LOGEMPIRICALMultiplicative Skewing transformation with Log Empirical base function will be applied. All data values must be positive. If this option is chosen, all predictions will be positive.
String
subset_size
(Optional)

The size of the subset. The input data will automatically be divided into subsets before processing. This parameter controls the number of points that will be in each subset.

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 into which each point will fall. A high value of the overlap factor produces a smoother output surface, but it also increases processing time. Values must be between 1 and 5. The actual overlap that will be used will usually be larger than this value, so each subset will contain the same number of points.

Double
number_simulations
(Optional)

The number of simulated semivariograms that will be used for each local model.

Using more simulations will make the model calculations more stable, but the model will take longer to calculate.

Long
trend_removal
(Optional)

Specifies the order of trend removal in the vertical direction.

For most 3D data, the values of the points change faster vertically than horizontally. Removing trend in the vertical direction will help alleviate this and stabilize calculations.

  • NONEVertical trend will not be removed. This is the default.
  • FIRSTFirst order vertical trend will be removed.
String
elev_inflation_factor
(Optional)

A constant value that is multiplied by the Elevation field value prior to subsetting and model estimation. For most 3D data, the values of the points change faster vertically than horizontally, and this factor stretches the locations of the points so that one unit of distance vertically is statistically equivalent to one unit of distance horizontally. The locations of the points will be moved back to their original locations before returning the result of the interpolation. This correction is needed to accurately estimate the semivariogram model as well as the correct neighbors for the Search neighborhood parameter. The elevation inflation factor is unitless and will provide the same results regardless of the units of the x-, y-, or z-coordinate of the input points.

If no value is provided for this parameter, one will be calculated at run time using a maximum likelihood estimation. The value will be printed as a geoprocessing message. The value calculated at run time will be between 1 and 1000. However, you can provide values between 0.01 and 1,000,000. If the calculated value is equal to 1 or 1000, you can provide values outside that range and choose a value based on cross validation.

Double
search_neighborhood
(Optional)

Specifies the number and orientation of the neighbors using the SearchNeighborhoodStandard3D class.

Standard3D

  • radius—The length of the radius of the search neighborhood.
  • nbrMax—The maximum number of neighbors per sector that will be used to estimate the value at the unknown location.
  • nbrMin—The minimum number of neighbors per sector that will be used to estimate the value at the unknown location.
  • sectorType—The geometry of the 3D neighborhood. Sectors are used to ensure that neighbors are used in different directions around the prediction location. All sector types are formed from the Platonic solids.
    • ONE_SECTOR—The closest neighbors from any direction will be used.
    • FOUR_SECTORS—Space will be divided into 4 regions, and neighbors will be used in each of the 4 regions.
    • SIX_SECTORS—Space will be divided into 6 regions, and neighbors will be used in each of the 6 regions.
    • EIGHT_SECTORS—Space will be divided into 8 regions, and neighbors will be used in each of the 8 regions.
    • TWELVE_SECTORS—Space will be divided into 12 regions, and neighbors will be used in each of the 12 regions.
    • TWENTY_SECTORS—Space will be divided into 20 regions, and neighbors will be used in each of the 20 regions.
Geostatistical Search Neighborhood
output_elevation
(Optional)

The default elevation of the out_ga_layer parameter value.

The geostatistical layer will draw as a horizontal surface at a given elevation, and this parameter specifies this elevation. After it's created, the elevation of the geostatistical layer can be changed using the range slider.

Double
output_type
(Optional)

Surface type to store the interpolation results.

For more information about output surface types, see What output surface types can the interpolation models generate.

  • PREDICTIONPrediction surfaces are produced from the interpolated values.
  • PREDICTION_STANDARD_ERROR Standard Error surfaces are produced from the standard errors of the interpolated values.
  • PROBABILITYThe output surface will be probability surfaces of values exceeding or not exceeding a certain threshold.
  • QUANTILEThe output surface will be quantile surfaces predicting the specified quantile of the prediction distribution.
String
quantile_value
(Optional)

The quantile value for which the output layer will be generated.

Double
threshold_type
(Optional)

Specifies whether to calculate the probability that a value exceeds or does not exceed the specified threshold.

  • EXCEEDThe probability that the value exceeds the threshold will be calculated. This is the default.
  • NOT_EXCEEDThe probability that the value does not exceed the threshold will be calculated.
String
probability_threshold
(Optional)

The probability threshold value. If no value is provided, the median (50th quantile) of the input data will be used.

Double

Code sample

EmpiricalBayesianKriging3D example 1 (Python window)

Interpolate a 3D point feature class using the EmpiricalBayesianKriging3D function.

import arcpy
arcpy.ga.EmpiricalBayesianKriging3D("my3DLayer", "Shape.Z", "myValueField", "myGALayer", "METER", "",
                                    "POWER", "NONE", 100, 1, 100, "NONE", "",
                                    "NBRTYPE=Standard3D RADIUS=10000 NBR_MAX=15 NBR_MIN=10 SECTOR_TYPE=ONE_SECTOR",
                                    "", "PREDICTION", 0.5, "EXCEED", None)
EmpiricalBayesianKriging3D example 2 (stand-alone script)

Interpolate a 3D point feature class using the EmpiricalBayesianKriging3D function.

# Name: EBK3D_Example_02.py
# Description: Interpolates 3D points.
# Requirements: Geostatistical Analyst Extension
# Author: Esri

# Import system modules
import arcpy

# Set local variables
in3DPoints = "C:/gapyexamples/input/my3DPoints.shp"
elevationField = "Shape.Z"
valueField = "myValueField"
outGALayer = "myGALayer"
elevationUnit = "METER"
measurementErrorField = "myMEField"
semivariogramModel = "LINEAR"
transformationType = "NONE"
subsetSize = 80
overlapFactor = 1.5
numSimulations = 200
trendRemoval = "FIRST"
elevInflationFactor = 20
radius = 10000
maxNeighbors = 15
minNeighbors = 10
sectorType = "FOUR_SECTORS"
searchNeighborhood = arcpy.SearchNeighborhoodStandard3D(radius, maxNeighbors, minNeighbors, sectorType)
outputElev = 1000
outputType = "PREDICTION"

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

# Execute Empirical Bayesian Kriging 3D
arcpy.ga.EmpiricalBayesianKriging3D(in3DPoints, elevationField, valueField, outGALayer, elevationUnit, myMEField,
                                    semivariogramModel, transformationType, subsetSize, overlapFactor, numSimulations,
                                    trendRemoval, elevInflationFactor, searchNeighborhood, outputElev, outputType)

Licensing information

  • Basic: Requires Geostatistical Analyst
  • Standard: Requires Geostatistical Analyst
  • Advanced: Requires Geostatistical Analyst

Related topics