插图
使用方法
当平均中心工具返回一个位于所有要素质心的平均 X 坐标、平均 Y 坐标和平均 Z 坐标(如果平均 Z 坐标可用)处的点时,中位数中心工具会使用迭代算法查找可使数据集中所有要素间的欧氏距离达到最小的点。
平均中心和中位数中心均是中心趋势度量。但是,相比而言, 中位数中心工具的算法受数据异常值的影响较小。
此工具需要使用投影数据来准确测量距离。
此工具支持点要素的 3D 特性,在提供 z 值的情况下,将在其计算中使用 x、y 和 z 值。因为这些结果本质上是 3D 要素,因此需要在场景中进行可视化。要正确可视化分析结果,请确保在场景中运行分析或将结果图层复制到场景中。
-
对于线和面要素,距离计算中会使用要素的质心。对于多点、折线或由多部分组成的面,将会使用所有要素部分的加权平均中心来计算质心。点要素的加权项是 1,线要素的加权项是长度,而面要素的加权项是面积。
案例分组字段用于将要素进行分组以分别计算中位数的中心。当指定了案例分组字段时,会首先根据案例分组字段值对输入要素进行分组,然后计算每个组的中位数中心。案例分组字段可以为整型、日期型或字符串型,并以属性形式显示在输出要素类中。对于案例分组字段,具有空值的记录将从分析中排除。
中位数中心要素的 x 值、y 值和 z 值是输出要素类中的属性。这些值存储在 XCOORD、YCOORD 和 ZCOORD 字段中。
将对属性字段参数中指定的所有字段计算数据中位数。
-
地图图层可用于定义输入要素类。在使用带有选择内容的图层时,分析只会包括所选的要素。
警告:
在使用 shapefile 时,请注意 shapefile 无法存储空值。根据非 shapefile 输入创建 shapefile 的工具或其他过程可能会将空值存储(或解释)为零。某些情况下,空值则以极大的负值储存于 shapefile 中。这会产生意外的结果。有关详细信息,请参阅 shapefile 输出的地理处理注意事项。
语法
arcpy.stats.MedianCenter(Input_Feature_Class, Output_Feature_Class, {Weight_Field}, {Case_Field}, Attribute_Field)
参数 | 说明 | 数据类型 |
Input_Feature_Class | 将计算其中位数中心的要素类。 | Feature Layer |
Output_Feature_Class | 将包含用于表示输入要素类的中位数中心的要素的点要素类。 | Feature Class |
Weight_Field (可选) | 用于创建加权中位数中心的数值字段。 | Field |
Case_Field (可选) | 用于对要素进行分组以独立计算中位数中心的字段。案例分组字段可以为整型、日期型或字符串型。 | Field |
Attribute_Field [Attribute_Field,...] | 将对其计算数据中值的数值字段。 | Field |
代码示例
以下 Python 窗口脚本演示了如何使用 MedianCenter 工具。
import arcpy
arcpy.env.workspace = r"C:\data"
arcpy.MedianCenter_stats("coffee_shops.shp", "coffee_MEDIANCENTER.shp", "NUM_EMP", "#", "#")
以下独立 Python 脚本演示了如何使用 MedianCenter 工具。
# Measure geographic distribution characteristics of coffee house locations weighted by the number of employees
# Import system modules
import arcpy
# Local variables...
workspace = "C:/data"
input_FC = "coffee_shops.shp"
CF_output = "coffee_CENTRALFEATURE.shp"
MEAN_output = "coffee_MEANCENTER.shp"
MED_output = "coffee_MEDIANCENTER.shp"
weight_field = "NUM_EMP"
try:
# Set the workspace to avoid having to type out full path names
arcpy.env.workspace = workspace
# Process: Central Feature...
arcpy.CentralFeature_stats(input_FC, CF_output, "Euclidean Distance", weight_field, "#", "#")
# Process: Mean Center...
arcpy.MeanCenter_stats(input_FC, MEAN_output, weight_field, "#", "#")
# Process: Median Center...
arcpy.MedianCenter_stats(input_FC, MED_output, weight_field, "#", "#")
except:
# If an error occurred when running the tool, print out the error message.
print(arcpy.GetMessages())
环境
- 输出坐标系
在进行分析之前将要素几何投影到输出坐标系。所有数学计算都基于输出坐标系空间参考。
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是