2
$\begingroup$

I was hoping if someone could guide me to the right algorithm to find the weighted midpoint of n-points. The photo attached below perfectly describes my problem. Let's just say we have three points with weights associated with them: $(x,y) = (3,5),(2,6),(7,2)$. The weights are $w_1 = 2, w_2 = 4, w_3 = 8$. How would I use the weights of these points to find the proper midpoint? I.e, if the weight is higher for one point than the other point, the midpoint would be closer to the point with the higher weight. enter image description here

$\endgroup$
0
$\begingroup$

If you want the centriod, it's just $(\bar{X}, \bar{Y})$. If you want weighted means, you can multiply each value by its weight before summing and then divide by the sum of the weights to compute the weighted mean. If it's more convenient for you, copy each datum weight times and then average. Here's a simple example, coded in R:

d = data.frame(x=c(3,2,7), y=c(5,6,2))
d = d[rep(1:3, times=c(2,4,8)),]
print(d, row.names=FALSE)
# x y
# 3 5
# 3 5
# 2 6
# 2 6
# 2 6
# 2 6
# 7 2
# 7 2
# 7 2
# 7 2
# 7 2
# 7 2
# 7 2
# 7 2
colMeans(d)
#        x        y 
# 5.000000 3.571429 
plot(d)
points(5, 3.57, pch=16, col="red")

enter image description here

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.