Search code examples
mathaveragerating

Maths: conflicting approaches to averaging two averages?


A product is rated according to two features. The ratings for each feature are averaged, and the results delivered to us in a web service. The data might look something like:

Product_One:{
  "Feature_A": {
    "TotalReviewCount": 14,
    "AverageOverallRating": 4.9286,
  },
  "Feature_B": {
    "TotalReviewCount": 42,
    "AverageOverallRating": 4.3571,
  },
}

My working for calculating (to one decimal place) the average overall rating for the Product is:

4.9286 + 4.3571 = 9.2857
9.2857 / 2 = 4.64285
round(4.64285) = 4.6

A colleague has presented a different working, resulting in a different number:

(14 * 4.9286) + (42 * 4.3571) = 251.9986
251.9986 / (42 + 14) = 4.499975
round(4.499975) = 4.5

Whose is... best? Is one wrong?


Solution

  • Your colleague calculated weighted average per review, and you calculated average per feature (not taking into account number of reviews).

    In general weighted average is more reliable (compare with Center of mass)