List the top 5 games with more reputation aggregated with their website page.
The reputation will be calculated based on the following formula:
Reputation = (positive scale) * (positive ratings - negative ratings)The positive scale will be based on the percentage of positive ratings over all the total ratings.
percentage = (positive ratings / all ratings) * 100
if the total of ratings = 0 => positive scale = 0
else
for percentage < 50 => positive scale = 1
for percentage < 70 => positive scale = 2
for percentage < 90 => positive scale = 3
for percentage < 95 => positive scale = 4
for percentage <= 100 => positive scale = 5- Java 21
mvn spring-boot:runGameFileRepository: Handles the reactive reading of CSV datasetsSteamTopReputationAnalyticsService: The core pipeline(CommandLineRunner)ReputationCalculator: The business logic to calculate the reputationDatasetValidatorRunner: Validates the existence of the required CSV datasets
Already set up in 📁 resources/datasets. In case you want to start from scratch:
Download zip from Steam Kaggle Dataset in 📁 resources/datasets
Curl Alternative
curl -L -o ~/src/main/resources/datasets/archive.zip https://www.kaggle.com/api/v1/datasets/download/nikdavis/steam-store-games- Unzip
archive.zip. - Only move
steam.csv&steam_support_info.csvtosrc/main/resources/datasets/.
- Rename
steam.csvtodata.csv. - Rename
steam_support_info.csvtosupport_data.csv.