我正在致力于根据学校之间的距离将学校聚集在一起。出于政策(预算)原因,我们希望这些组中尽可能多地包含 5 所学校。我们有 297 所学校需要聚类,这将构成 59 个 5 人一组和 1 个 3 人一组(或尽可能接近的值)。我正在查看 rgeoda 的文档(https://geodacenter.github.io/rgeoda/reference/index.html),我正在努力找出要使用的正确参数。
到目前为止我已经做到了:
literacy_geoda <- sf_to_geoda(latlong_geom)
kernel_weights(literacy_geoda)
当我尝试从 rgeoda 运行类似上面的函数时,我收到此错误:
sf_obj[[attr(sf_obj, "sf_column")]] 中的错误: 环境子集化的错误参数
kmeans结果[["簇"]]
我之前尝试过只使用 kmeans,它大部分工作,但我无法设置最小或最大邻居,所以我得到的组远大于 5。
set.seed(123)
kmeans_result <- kmeans(coords, centers = 60, iter.max = 5)
latlong_geom$cluster_school <- kmeans_result$cluster
保存权重
weights <- kernel_weights(literacy_geoda)
,然后将形状和权重传递给连续聚类函数。在 rgeoda
中,您可能会看到函数 ?gda_queen_weights
,尽管它目前仅在内部使用免责声明。祝你好运!
包作者还在线提供了 API 函数列表: