I am trying to device a algo for product score. Here are the inputs

  1. User rates a product on 5 different criteria out of 10
  2. Each criteria has a different weightage with all adding up to 100%
  3. There are 3 types of user expert, inter, beginner
  4. Again weightage of users is different

Here is what i have thought

  1. We get the final score for each user out of 10 by

    User score = CriteriaScore 1 * Weight 1 + CriteriaScore 2 * Weight 2 + ... + CriteriaScore 5 * Weight 5

  2. Expert gets a weight of 3, inter get a weight of 2 and beginner gets a weight of 1

    Final score = Avg Final score of expert * WeightExpert + Avg Final score of inter * WeightInter + Avg Final score of beginner * WeightBeginner

But my formula doesn't take into account How many people rated the product. How do i get this data into the picure.

Any other suggestion is also welcome


You want a weighted average computed as follows:

$$\frac{ w_1 S_1 + w_2S_2 + w_3S_3}{w_1C_1 + w_2C_2 + w_3C_3}$$

Where $S_i$ is the sum of the scores from the people with "level" $i$, and $C_i$ is the number of users of "level" $i$. Thus, if level "1", "2", and "3" are, respectively, "expert," "inter," and "beginner," the formula would be:

$$\frac{3S_1 + 2S_2 + S_3}{3C_1+2C_2 + C_3}$$

Think of it this way: An expert's score is submitted three times, intermediate two times, and beginner one time. So the denominator would be the "count" of the total data, and the numerator is the sum of that data set.


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.