I am building a mobile app that can predict what apps users may be interested in downloading from the play store, based on what apps the user has already installed on their device and how much time they have spent on these apps. Also, there is the option to scroll through the top apps in the play store and you can "favourite" any apps that you find interesting/want to download.

Based on this data, I would like to make predictions and notify users of any new popular apps that are released in the future, however since the predictions will be user specific, I am unsure if the dataset will be too small for k-means clustering (Group the apps into genres and find most popular genres). 35 is the average number of apps installed on user's smartphones, and if you include any "favourited apps" the total dataset could be around 50.

Perhaps there is another more suitable technique I could apply to make accurate predictions but I am unsure where to go at the moment.

  • $\begingroup$ Why do you think clustering will be better suited here than regular recommender systems? $\endgroup$ Commented May 27, 2018 at 7:42
  • $\begingroup$ I'm not 100% sure. My initial idea was to find the most popular categories of apps (Sport, Health, LifeStyle etc etc) based on the apps that the user has already installed on their device. So I would take into consideration how much time they have spent on these apps but I wasn't sure how to approach this. There is the option to 'favourite' apps so I will use item-item collaborative filtering to find similar 'favourited' apps between multiple users. $\endgroup$
    – Olympus
    Commented May 28, 2018 at 9:00

1 Answer 1


Broadly speaking, what you want is a recommender system. If you consider only the user-app association data (app installs, likes, etc.), and no user or app metadata, then you should look at collaborative filtering.

More specifically, a simpler technique you can consider is item-similarity based recommendation (users who install app A, also install app B). A slightly more complex method involves factorization of the partial user-app association matrix and then inferring missing points in the matrix. This paper describes one such factorization technique used in the Netflix Prize movie recommendation challenge.


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.