Al buscar en la web, las soluciones para encontrar centroides de polígonos surgen con bastante frecuencia. Lo que me interesa es encontrar un centroide de un grupo de puntos. Una especie de media ponderada. Le agradecería si alguien pudiera proporcionar algunos punteros, pseudocódigo (o incluso mejor, un paquete R que ya haya resuelto esto) o enlaces sobre cómo se puede abordar este problema.
EDITAR
La convergencia ha estado en marcha (de nuevo). iant ha sugerido un método para promediar coordenadas y usarlo para el centroide. Esto es exactamente lo que pasó por mi mente cuando vi la imagen correcta en esta página web .
Aquí hay un código R simple para dibujar la siguiente figura que demuestra esto (× es el centroide):
xcor <- rchisq(10, 3, 2)
ycor <- runif(10, min = 1, max = 100)
mx <- mean(xcor)
my <- mean(ycor)
plot(xcor, ycor, pch = 1)
points(mx, my, pch = 3)
EDITAR 2
cluster::pam()$medoids
devuelve un medoide de un conjunto de clúster. Este es un ejemplo robado descaradamente de @Joris Meys:
library(cluster)
df <- data.frame(X = rnorm(100, 0), Y = rpois(100, 2))
plot(df$X, df$Y)
points(pam(df, 1)$medoids, pch = 16, col = "red")
Respuestas:
simplemente promedie las coordenadas X e Y (multiplique por un peso si lo desea) y ahí está su centroide.
fuente
Puede usar la función centroide del paquete de geosfera.
https://www.rdocumentation.org/packages/geosphere/versions/1.5-5/topics/centroid
fuente