Code
in Detail

In this page you will find information about the
software design in our applications.

Extracting concrete data

In order to get results for our study, we had to separate information from the dataset and reorganize it in a new dataset that would only contain information about the columns that we desired.

We managed the data through spark dataframes and selected the colums we wanted to generate a new dataframe organised with the data we were going to need for the method. In this example, we select the steamspy_tags who correspond to the videogames genre with the average_playtime of each of the games. After that, we grouped the column we specified and managed the data from the other column to get the info we wannted. In this case, we grouped each videogame gennre and calculated the average playtime for each one of them.

We also included a script which has been used for getting the top elements from a specific column that we are analyzing. This method used pyspark window function to order by key the column given and getting top K elements from the data.

Videogame recommendation

We have also developed a system to recommend the player different videogames according to their favorite genres.

In this code, given a game, it returns other 20 games that are similar and recommendable. This code tries to filter between most upvoted videogames in order to recommend the most played games according to the given videogame. This method allows to show a player new videogames according to his most played applications. It uses spark dataframes to filter between most recommended videogames and genres. After that, it groups the results and order them by their total playtime in order to get the top 20 videogames that might be of interest to the user.

Publishers' usual release dates

With this code we will be able to obtain a pie chart with the usual months that publishers tend to release their games.

When running this Python script on your usual Python interpreter, the console will ask you to write a publisher name, and after a brief moment, a pie chart will appear showing the months that the company that you selected tend to release their games. Usually, big publisher companies will release on big sales dates, to promote clients buying their games, but indie or smaller publishers often release games all over the year, trying to avoid big companies' releases.
If you are capable of scripting Python, inspecting this code you will find that it also generates dictionaries relating every publisher name, games from that company and the release month of every game, and you can also easily extract pie charts of every developer or publisher.