【发布时间】:2019-06-10 07:37:56
【问题描述】:
我需要计算具有经度和纬度变量的空间数据的平均位置。操作需要分组进行,这使事情有些复杂。我已经能够为简单的加权平均值(下面的示例)执行此操作,但更复杂的度量并不那么容易实现。
示例数据:
df <- data.frame(longitude = c(22, 23, 24, 25, 26, 27),
latitude = c(56, 57, 58, 59, 60, 61),
weight = c(1, 2, 3, 1, 2, 3),
group = c("A", "A", "A", "B", "B", "B"))
简单加权平均:
dfMean <- df %>%
group_by(group) %>%
summarize_at(vars(longitude, latitude), list(~weighted.mean(., weight))) %>%
ungroup
我想用函数geopshere::geomean 来计算它。问题是函数的输出是一个两列矩阵,与dplyr::summarize不兼容。有关如何有效实现这一目标的任何建议?
【问题讨论】:
-
用
as.tbl包装一下吧?
标签: r dplyr geospatial