标注 | 说明 | 数据类型 |
输入要素 | 包含表示因变量和解释变量值的字段的要素类。 | Feature Layer |
因变量 | 表示因变量值的数字字段。 在对关系进行分类时,解释变量值用于预测因变量值。 | Field |
解释变量 | 表示解释变量值的数字字段。 在对关系进行分类时,解释变量值用于预测因变量值。 | Field |
输出要素 | 输出要素类,包含所有输入要素,输入要素中的字段表示因变量值、解释变量值、熵得分、伪 p 值,显著性级别、分类关系的类型以及与分类相关的诊断。 | Feature Class |
相邻要素的数目 (可选) | 每个要素周围的邻域数(包括该要素在内),用于测试变量之间的局部关系。 邻域数量必须介于 30 和 1000 之间,默认值为 30。 提供的值应足够大,以检测要素之间的关系,但同时要小到足以识别局部模式。 | Long |
置换检验次数 (可选) | 指定将用于计算每个要素的伪 p 值的置换次数。 选择置换次数时需要兼顾伪 p 值的精度和所需增加的处理时间。
| Long |
启用局部散点图弹出窗口 (可选) | 指定是否为每个输出要素生成散点图弹出窗口。 每个散点图显示局部邻域中的解释变量(水平轴)和因变量(垂直轴)的值以及可视化关系形式的拟合线或曲线。 shapefile 输出不支持散点图。
| Boolean |
置信度级别 (可选) | 指定显著关系的假设检验的置信度级别。
| String |
应用错误发现率 (FDR) 校正 (可选) | 指定是否将错误发现率 (FDR) 校正应用于伪 p 值。
| Boolean |
比例因子 (Alpha) (可选) | 变量之间微妙关系的灵敏度级别。 较大的值(更接近于 1)可以检测到相对较弱的关系,而较小的值(接近于 0)将仅检测到强关系。 较小的值对异常值也更稳健。 该值必须介于 0.01 和 1 之间,默认值为 0.5。 | Double |
摘要
使用局部熵分析两个变量以获得统计学显著关系。 根据关系的类型,每个要素被划分为六个类别之一。 输出可用于可视化变量相关的区域,并探索它们在整个研究区域内的关系如何变化。
插图
使用情况
此工具接受点和面作为输入,且应与连续变量一起使用。 此工具不适用于二进制或分类数据。
建议您将输出要素存储在地理数据库中,而不要将其存储为 shapefile (.shp)。 Shapefile 无法在属性中存储空值,也无法在弹出对话框中存储图表。
每个输入要素将根据解释变量参数可以预测因变量参数值的可靠程度分类为以下关系类别之一:
- 不显著 - 变量之间的关系不具有统计显著性。
- 正线性 - 随着解释变量的增加,因变量线性增加。
- 负线性 - 随着解释变量的增加,因变量线性减小。
- 凹 - 当解释变量增加时,因变量呈凹曲线变化。
- 凸 - 当解释变量增加时,因变量呈凸曲线变化。
- 未定义复杂项 - 变量显著相关,但任何其他类别都不能可靠地描述关系类型。
两个变量之间是否相关不依赖于哪个变量标记为解释变量或因变量。 例如,如果糖尿病与肥胖有关,肥胖与糖尿病同样相关。 然而,关系类型的分类可能基于哪个变量被标记为解释变量或因变量而改变。 一个变量可以准确地预测第二个变量,但第二个变量不能准确预测第一个变量。 如果您不确定哪个变量应标记为解释变量和因变量,请运行该工具两次并尝试两种标记方法。
此工具支持并行处理,默认情况下使用 50% 的可用处理器。 处理器数目可以通过使用并行处理因子环境增加或减少。
参数
arcpy.stats.LocalBivariateRelationships(in_features, dependent_variable, explanatory_variable, output_features, {number_of_neighbors}, {number_of_permutations}, {enable_local_scatterplot_popups}, {level_of_confidence}, {apply_false_discovery_rate_fdr_correction}, {scaling_factor})
名称 | 说明 | 数据类型 |
in_features | 包含表示 dependent_variable 和 explanatory_variable 值的字段的要素类。 | Feature Layer |
dependent_variable | 表示因变量值的数字字段。 在对关系进行分类时,explanatory_variable 值用于预测 dependent_variable 值。 | Field |
explanatory_variable | 表示解释变量值的数字字段。 在对关系进行分类时,explanatory_variable 值用于预测 dependent_variable 值。 | Field |
output_features | 输出要素类,包含所有输入要素,输入要素中的字段表示 dependent_variable 值、explanatory_variable 值、熵得分、伪 p 值、显著性级别、分类关系的类型以及与分类相关的诊断。 | Feature Class |
number_of_neighbors (可选) | 每个要素周围的邻域数(包括该要素在内),用于测试变量之间的局部关系。 邻域数量必须介于 30 和 1000 之间,默认值为 30。 提供的值应足够大,以检测要素之间的关系,但同时要小到足以识别局部模式。 | Long |
number_of_permutations (可选) | 指定将用于计算每个要素的伪 p 值的置换次数。 选择置换次数时需要兼顾伪 p 值的精度和所需增加的处理时间。
| Long |
enable_local_scatterplot_popups (可选) | 指定是否为每个输出要素生成散点图弹出窗口。 每个散点图显示局部邻域中的解释变量(水平轴)和因变量(垂直轴)的值以及可视化关系形式的拟合线或曲线。 shapefile 输出不支持散点图。
| Boolean |
level_of_confidence (可选) | 指定显著关系的假设检验的置信度级别。
| String |
apply_false_discovery_rate_fdr_correction (可选) | 指定是否将错误发现率 (FDR) 校正应用于伪 p 值。
| Boolean |
scaling_factor (可选) | 变量之间微妙关系的灵敏度级别。 较大的值(更接近于 1)可以检测到相对较弱的关系,而较小的值(接近于 0)将仅检测到强关系。 较小的值对异常值也更稳健。 该值必须介于 0.01 和 1 之间,默认值为 0.5。 | Double |
代码示例
以下 Python 窗口脚本演示了如何使用 LocalBivariateRelationships 函数。
import arcpy
arcpy.env.workspace = 'C:\\LBR\\MyData.gdb'
arcpy.stats.LocalBivariateRelationships('ObesityDiabetes', 'ObesityRate',
'DiabetesRate','LBR_Results', 30, '199', 'CREATE_POPUP',
'95%', 'APPLY_FDR', 0.5)
以下独立 Python 脚本演示了如何使用 LocalBivariateRelationships 函数。
# Use the Local Bivariate Relationships tool to study the relationship between
# obesity and diabetes.
# Import system modules.
import arcpy
import os
# Set property to overwrite existing output by default.
arcpy.env.overwriteOutput = True
try:
# Set the workspace and input features.
arcpy.env.workspace = r"C:\\LBR\\MyData.gdb"
inputFeatures = 'ObesityDiabetes'
# Set the output workspace and output name.
outws = 'C:\\LBR\\outputs.gdb'
outputName = 'LBR_Results'
# Set input features, dependent variable, and explanatory variable.
depVar = 'DiabetesRate'
explVar = 'ObesityRate'
# Set number of neighbors and permutations.
numNeighbors = 50
numPerms = '999'
# Choose to create pop-ups.
popUps = 'CREATE_POPUP'
# Choose confidence level and apply False Discovery Rate correction.
confLevel = '95%'
fdr = 'APPLY_FDR'
# Set the scaling factor.
scaleFactor = 0.5
# Run Local Bivariate Relationships.
arcpy.stats.LocalBivariateRelationships(inputFeatures, depVar, explVar,
os.path.join(outws, outputName),
numNeighbors, numPerms, popUps,
confLevel, fdr, scaleFactor)
except arcpy.ExecuteError:
# If an error occurred when running the tool, print the error message.
print(arcpy.GetMessages())