I have a large dataset with many variables (for example: height, weight, color, category, revenue...)

I am trying to compare two groups and find which variables determine the groups. My goal would be to narrow down the variables and be able to pick a small number of variables that would be able to determine which group a record belongs to.

For instance compare group A (top 1% revenue) to group B (bottom 99% revenue) and determine which variables are causing the items to be in the different revenue groups.

What method would I use to accomplish this?


I think a method like SVM would be used to classify which group (A or B) an entry would fit into.

What I'm trying to do is find which of the variables (ie: height, weight, color...) have a determining effect on the classification. I'd like to be able to choose a small number of the variables that make a difference.

Is there a method to accomplish this?


  • $\begingroup$ There are numerous classification methods (logistic regression, support vector machines, etc.). It looks like you are trying to do prediction, so rather than elaborate on a long answer, you could probably do some searching on the Web and even here on CV, and figuring out which one(s) fit your context. $\endgroup$ Apr 13, 2015 at 18:44
  • $\begingroup$ @robin.datadrivers, I edited my question. I'm looking to choose the significant variables, not determine which group a record fits into. Am I misunderstanding the way classification methods work? $\endgroup$
    – Elks
    Apr 15, 2015 at 10:23
  • $\begingroup$ There are only 1% in one group and 99% in the other group. This could affect the choice of method to be used. Why do you not analyse revenue as a continuous variable? $\endgroup$
    – rnso
    Apr 15, 2015 at 12:02
  • $\begingroup$ OK - just be careful with the language you use. "Determining which group" sounds like classification, where one is less interested in the individual relationships among the dependent and independent variables and more interested in predicting group membership with accuracy. Inference - determining those specific relationships - often requires a separate strategy. Data reduction, where you collapse independent variables to be more manageable and (maybe) more meaningful, is yet another paradigm. $\endgroup$ Apr 15, 2015 at 15:26
  • $\begingroup$ @rnso what kind of method would fit a 1% - 99% group split? What do you mean by continuous variable? $\endgroup$
    – Elks
    Apr 19, 2015 at 17:31

1 Answer 1


If I understand your question correctly, it seems as if you need to apply 2 often related methods: Factor Analysis (Here specifically what you are seeking is exploratory factor analysis) and Cluster Analysis.

The purpose of the factor analysis would be to reduce the set of variables in your dataset as you are requesting.

The purpose of the cluster analysis would be to arrive at clusters of individuals/cases/objects using different variables to obtain these clusters. The solution can be used to examine the difference of the different variables across the clusters, helping to describe your clusters. E.g. it might turn out that income vary a lot across the obtained clusters, but height show no significant variation across the clusters. For examining this the methods of anova/manova can be used.

This is my first time answering a question on this site, hopefully it was insightful!

Cheers //Tralala

  • $\begingroup$ If I understand correctly, the EFA would be used to somewhat narrow down the number of variables I have. Would that be done for the entire set together? What am I performing cluster analysis on, and how do I take into account the 1% - 99% group requirement? $\endgroup$
    – Elks
    Apr 19, 2015 at 18:40

Your Answer

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

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