I'm interested in doing segmentation/clustering of users in clickstream data and am looking for some good suggestions about how to go about it.

Lets say my data consists of observations made up of visitors to a website. The data is in clickstream/weblog format and so is made up of users cookie data. Lets say I can identify unique users via their IP address (as a basic example). How should I go about preparing my data so that it can be segmented to find users with similar behaviours? One of my thoughts around this, is that because the data is event-driven, the same user can obviously appear multiple times in the data even though it may all be related to the same session of that user. How are these types of problems tackled so that you can perform segmentation based on user behaviour?

Thanks for your suggestions!

  • 2
    $\begingroup$ You have to identify good features yourself. We don't have your data. $\endgroup$ – Has QUIT--Anony-Mousse Oct 4 '15 at 20:53

This sounds like a time-related predictive task...i.e. forecasting. The data you have available is event-driven, e.g. data is recorded when a user clicks on a link/refreshes a page/clicks on a Google ad etc. This means that you need to treat your data as if it were a time-series for each user. This would be easier if you had access to ESP (Event Stream Processing) but let's say that you do not. Therefore, you need to identify each user, aggregate their info/features so that you have features identifying the number of unique pages they visited, the number of sessions they had etc. etc. Then you can segment these users and you may or may not derive useful segments from them. You could even go a step further and do session analysis whereby you identify unique sessions and cluster/segment user sessions looking for nice visual patterns or anomalies.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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