
Algorithm creating for bespoke reviews website
- or -
Post a project like this- Posted:
- Proposals: 12
- Remote
- #2973821
- Awarded







Description
The ranking system is to be weighted for 3 factors:
1. The overall review score (maximum is 5 stars)
2. The number of reviews (unlimited number, existing data ranges between a handful of reviews up to 150ish).
3. The number of reviews over time (reviews left in the last month should count as a higher value than those left 12 months ago as a company could have changed it's performance dramatically in a year)
The ranking system will push those with a high score and a high number of reviews to the top. I want to avoid having a company with 5x 5 star reviews ranking above a company that has 30x 4.8 star reviews.
Example:
Company A - 5 Stars - 8 reviews
Company B - 4.89 Stars - 37 reviews
Company C - 4.87 stars - 143 reviews
Company D - 4.50 stars - 85 reviews
Company E - 4.00 stars - 99 reviews
They should look to be ranked in the following order:
C
B
D
E
A
In this example the overall star rating is the most important factor and company C has a high star rating but also a lot of reviews. Company B has a slightly higher star rating, but not as many reviews which is why it comes second. Company D has more reviews but not the rating is now as high as company B which is why it sits underneath. Company A is at the bottom as a few bad reviews could pull it's overall score right down.
Would be happy to discuss the project in more detail with those that feel this is achievable.

Ian H.
100% (34)New Proposal
Login to your account and send a proposal now to get this project.
Log inClarification Board Ask a Question
-
Hi Ian,
Can you please clarify the weighting factors. The first weighting factor is the overall score, which suggests that each company will have just a single score. But the third factor is the score over time, which suggests that each company will have not one score but a sequence of scores. Can you provide a simple example of the time-based data. Would it be of this form (my numbers are plucked out of thin air):
Company C: (4.87, 143, 1), (4.91, 132, 2), (4.61, 172, 3), ...
where the third number in each set indicates how many months back the score relates to.
Someone has asked about the technology stack, but I assume you just want a clear description of the algorithm (perhaps implemented for illustration in a simple way in Excel, Python or similar), which you will then implement yourself. Do let me know if this is correct.
Regards
John
-
Is there any tech stack that you want the logic to be built in? What stack will the server-side logic be built in?