GeostatisticalDatasets (arcpy)
摘要
GeostatisticalDatasets 类用于管理与地统计模型源相关的数据集。地统计模型源可以是地统计图层或地统计模型 (XML)。
讨论
通过使用 GeostatisticalDatasets 对象,可以快速将地统计模型应用于新的数据集。例如,按照如下“代码示例”部分中第一示例所示,如果从使用含障碍的核插值法制作出的地统计图层入手,您可轻松地将障碍要素类更改为新的面要素类。然后可以生成使用新障碍的新地统计图层。新地统计图层将所有相同的插值参数(例如含障碍的核插值法中的带宽参数)应用到新数据集中。如果希望对各数据集使用相同的插值参数,则将有助于为多个数据集自动创建地统计图层。
此类主要用在创建地统计图层、移动窗口克里金法和半变异函数灵敏度工具的输入数据集参数的 Python 中。
此类使用地统计模型源作为参数,并返回一个具有应用于该模型的属性的对象。例如,如果地统计模型源是径向基函数模型的结果,唯一与 GeostatisticalDatasets 对象有关的属性将是 dataset1 和 dataset1Field,这是因为所有其他属性均无法应用于径向基函数模型。查看“属性”列表以确定哪些属性可适用于各个类型的地统计模型源。
如果地统计模型源是地统计图层,则对象的属性将由数据集字符串和用于该地统计图层的字段填充。如果地统计模型源是 XML 文件,则相关属性将由空字符串填充,这是因为地统计模型 (XML) 文件不包含数据集的参考。请注意,数据集属性不能由表填充。
所有引用字段的属性均以其相关数据集作为前缀。例如,dataset2Field 引用 dataset2 的相关字段。
由于 dataset1WeightField、dataset1TimeField 和 dataset2TimeField 分别在其相关地统计模型中都是可选输入,若不论其是否实际包括在原始地统计模型源中均可应用于此模型,则这些属性将在 GeostatisticalDatasets 对象中创建。例如,如果地统计模型源是反距离权重法模型,仅含一个要素类和一个字段,则返回的 GeostatisticalDatasets 对象将具有 dataset1、dataset1Field 和 dataset1WeightField 属性,尽管原始模型不使用权重字段。在这种情况下,dataset1WeightField 将由空字符串填充。
语法
参数 | 说明 | 数据类型 |
ga_model_source |
The geostatistical model source used to generate the properties of the class. The model source must be a geostatistical layer or a geostatistical model (XML) file. Geostatistical model (XML) files can be saved from the Method Report screen at the end of the Geostatistical Wizard. | String |
属性
属性 | 说明 | 数据类型 |
dataset1 (读写) |
主要数据集的目录路径。此属性适用于所有地统计模型。 | String |
dataset1CountField (读写) | 计数字段的字符串与 dataset1 相关联。此属性适用于计数(过度离散泊松)和比率(二项式)面插值模型。 | String |
dataset1Field (读写) | 字段的字符串与 dataset1 相关联。此属性适用于所有地统计模型,面插值模型除外。 | String |
dataset1PopulationField (读写) | 人口字段的字符串与 dataset1 相关联。此属性适用于比率(二项式)面插值模型。 | String |
dataset1TimeField (读写) | 时间字段的字符串与 dataset1 相关联。此属性适用于计数(过度离散泊松)面插值模型。 | String |
dataset1ValueField (读写) | 值字段的字符串与 dataset1 相关联。此属性适用于平均值(高斯)面插值模型。 | String |
dataset1WeightField (读写) | 权重字段的字符串与 dataset1 相关联。此属性适用于反距离权重法、全局多项式插值法、含障碍的扩散插值法和含障碍的核插值法模型。 | String |
dataset2 (读写) | String | |
dataset2CountField (读写) | 计数字段的字符串与 dataset2 相关联。此属性适用于联合面插值模型,其中二级变量为计数(过度离散泊松)或比率(二项式)。 | String |
dataset2Field (读写) | 字段的字符串与 dataset2 相关联。此属性适用于协同克里金法模型。 | String |
dataset2PopulationField (读写) | 人口字段的字符串与 dataset2 相关联。此属性适用于联合面插值模型,其中二级变量为比率(二项式)。 | String |
dataset2TimeField (读写) | 时间字段的字符串与 dataset2 相关联。此属性适用于联合面插值模型,其中二级变量为计数(过度离散泊松)。 | String |
dataset2ValueField (读写) | 值字段的字符串与 dataset2 相关联。此属性适用于联合面插值模型,其中二级变量为平均值(高斯)。 | String |
dataset3 (读写) |
第三数据集的目录路径。此属性适用于至少使用三个数据集的协同克里金法模型。 | String |
dataset3Field (读写) | 字段的字符串与 dataset3 相关联。此属性适用于至少使用三个数据集的协同克里金法模型。 | String |
dataset4 (读写) |
第四数据集的目录路径。此属性适用于使用四个数据集的协同克里金法模型。 | String |
dataset4Field (读写) | 字段的字符串与 dataset4 相关联。此属性适用于使用四个数据集的协同克里金法模型。 | String |
declusterPolygons1 (读写) | 用于去聚 dataset1 的面要素类的目录路径。此属性适用于克里金法和协同克里金法模型,其中主要数据集已使用面去聚方法去聚。 | String |
declusterPolygons2 (读写) | 用于去聚 dataset2 的面要素类的目录路径。此属性适用于协同克里金法模型,其中第二数据集已使用面去聚方法去聚。 | String |
declusterPolygons3 (读写) | 用于去聚 dataset3 的面要素类的目录路径。此属性适用于协同克里金法模型,其中第三数据集已使用面去聚方法去聚。 | String |
declusterPolygons4 (读写) | 用于去聚 dataset4 的面要素类的目录路径。此属性适用于协同克里金法模型,其中第四数据集已使用面去聚方法去聚。 | String |
featureBarriers (读写) | String | |
rasterBarrierAdditive (读写) | 用于定义附加栅格障碍的栅格数据集的目录路径。此属性适用于含障碍的扩散插值法模型,其中包含附加栅格障碍。 | String |
rasterBarrierCumulative (读写) | 用于定义累积栅格障碍的栅格数据集的目录路径。此属性适用于含障碍的扩散插值法模型,其中包含累积栅格障碍。 | String |
rasterBarrierFlow (读写) | 用于定义流动栅格障碍的栅格数据集的目录路径。此属性适用于含障碍的扩散插值法模型,其中包含累积栅格障碍。 | String |
代码实例
使用保存为模型源图层文件的地统计图层,并将要素类和字段更改为新的数据集和字段。原始模型使用面要素类作为绝对障碍,并将这些障碍应用于新的数据集和字段。
# Name: GeostatisticalDatasets_Example_01.py
# Description: Uses a Kernel Interpolation With Barriers model source
# and changes the feature class and field to a new dataset and field.
# Requirements: Geostatistical Analyst Extension
import arcpy
# Define the model source
ga_layer = 'C:/data/kernelsmoothing.lyr'
# Create the GeostatisticalDatasets object
geo_datasets = arcpy.GeostatisticalDatasets(ga_layer)
# Set the dataset1 property to the new data
geo_datasets.dataset1 = 'C:/data/data.gdb/new'
# Set the new field
geo_datasets.dataset1Field = 'newfield'
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Create a new geostatistical layer with the new data
arcpy.GACreateGeostatisticalLayer_ga(ga_layer, geo_datasets, 'outGALayer1')
# Save the new geostatistical layer as a layer file
arcpy.SaveToLayerFile_management('outGALayer1', 'C:/data/newlayer1.lyr',
'ABSOLUTE')
使用反距离权重法图层文件作为模型源。此模型使用输入要素类和字段。在重新创建反距离权重法模型前,此代码示例会添加权重字段。
# Name: GeostatisticalDatasets_Example_02.py
# Description: Uses an IDW model source and adds a weight field.
# Requirements: Geostatistical Analyst Extension
import arcpy
# Define the model source
ga_layer = 'c:/data/IDW.lyr'
# Create the GeostatisticalDatasets object
geo_datasets = arcpy.GeostatisticalDatasets(ga_layer)
# Set the weight field
geo_datasets.dataset1WeightField = 'weightfield'
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Create a new geostatistical layer that uses a weight field
arcpy.GACreateGeostatisticalLayer_ga(ga_layer, geo_datasets, 'outGALayer2')
# Save the new geostatistical layer as a layer file
arcpy.SaveToLayerFile_management('outGALayer2', 'C:/data/newlayer2.lyr',
'ABSOLUTE')
使用协同克里金法 XML 文件作为模型源。此模型包括两个数据集和字段,并且第二个数据集使用去聚面要素类。此代码示例更新了数据集、字段和去聚面要素类。
# Name: GeostatisticalDatasets_Example_03.py
# Description: Uses a cokriging model with two datasets and changes
# the datasets, fields, and the declustering polygon feature class.
# Requirements: Geostatistical Analyst Extension
import arcpy
# Define the model source
cokriging_xml = 'C:/data/cokriging.xml'
# Create the GeostatisticalDatasets object
geo_datasets = arcpy.GeostatisticalDatasets(cokriging_xml)
# Set the first dataset and field
geo_datasets.dataset1 = 'C:/data/data.gdb/new1'
geo_datasets.dataset1Field = 'newfield1'
# Set the second dataset and field
geo_datasets.dataset2 = 'C:/data/data.gdb/new2'
geo_datasets.dataset2Field = 'newfield2'
# Set the new declustering polygons for the second dataset
geo_datasets.declusterPolygons2 = 'C:/data/data.gdb/decluster2'
# Check out the ArcGIS Geostatistical Analyst extension license
arcpy.CheckOutExtension("GeoStats")
# Create a new geostatistical layer with the new data
arcpy.GACreateGeostatisticalLayer_ga(cokriging_xml, geo_datasets, 'outGALayer3')
# Save the new geostatistical layer as a layer file
arcpy.SaveToLayerFile_management('outGALayer3', 'C:/data/newlayer3.lyr',
'ABSOLUTE')