I am trying to synthetize clients Data in order to do clustering. My problem is for 1 customer I have severals rows. I would like to synthetize informations to get 1 row per customer. This clustering is about how customers use fidelity program. Here is a picture of my table : By Column (left to right) :

1) CustomerID 2)Date at which their use their points 3) Category number (Ex: 1 is gift card, 2 is a flight etc) 4) How many points they used 5) How many items they purchased with points Table

My question is how could I have 1 customer per row without loosing informations. Maybe Pivot Table? But I don"t know how it work exactly. I am new to statistic btw.

Thank you


  • $\begingroup$ Why do you want to throw away information? Can't you cluster users as is; e.g., by modeling each user as a vector of points per category? $\endgroup$
    – Emre
    Jan 31, 2016 at 10:31
  • $\begingroup$ I have 3 others tables with customer and I have to join them together. If I have for the table 1 5 times customer 1500 and for the table 2 26 times the customer 1400 I can"t join my 2 tables ? $\endgroup$ Jan 31, 2016 at 17:58
  • $\begingroup$ From a machine learning perspective, that is no problem. Is it feasible to do this join even once? $\endgroup$
    – Emre
    Jan 31, 2016 at 19:31
  • $\begingroup$ Yes only once. But maybe I should do : 1 Column per category for example. I would know if a customer use more points in category 1 than 5. Then when i will do the clustering process an customers who spend a lot of points in "Gift card" will be together ?This is why I should use pivot table ? $\endgroup$ Jan 31, 2016 at 20:47

1 Answer 1


If you can afford to do the full join once, do it and learn which columns are useful through feature selection. Then you can only SELECT these columns for subsequent iterations, when the database is updated.

Here's a survey: Feature Selection for Clustering: A Review


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.