I am currently about to do clustering analysis regarding Steam users activity. So I have a thousands of CSV’s, each representing a Steam user and his/her purchased games (with ID and genre). I am planning to use k-modes clustering because my data is categorical, and I have found a python library k-modes. This is what a CSV file looks like, representing a random steam user.

CSV file image

I have researched a lot online, but it seems that many people have all their data in one CSV file, just like this example of stock exchange data.

Stock Data

How could I read each file and represent it as one unique data then do clustering on all the data among the thousands of CSV files?

  • $\begingroup$ Can you post exactly which routine you would use if all of your data was in one file, and an example of the actual data, that is not a picture? $\endgroup$
    – Stephen Rauch
    Feb 2, 2018 at 2:58

2 Answers 2


You're likely going to have to do a little data wrangling to get the data in a better format.

I'm assuming each file has a varying amount of rows, one for each game the user purchased? So, you could create one big matrix with the rows representing users and the columns representing games, and create an indicator matrix for to map purchases to games. Then potentially add additional columns per user including additional insight, like:

  • the number/percent of games purchased for each category(action, RPG, ...)
  • total purchases

Having data in that format may lend to more useful application of clustering algorithms.


No algorithm directly works on the CSV data.

Even the people that use a single CSV fike will have to parse it and load the data into a suitable in memory representation.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.