Why and how to match variables using logistic regression? I have a dataset of ~4.7K records focused on binary classification with 60 features. class 1 is of 1554 records and class 2 is of 3558 records.
Now I would like to find the risk factors that influences the outcome.
I understand that people do matching to ensure that both the classes have similar distribution, so that the comparison results are reliable.
1) Are all my independent variables X1,X2...Xn called as exposure variables?
2) I see people usually do matching based on demographics like Age etc. Is it to infer what factors really influence the outcome if we keep Age constant. Am I right to understand this way?
3) If I put all the variables in logistic regression model, doesn't that account for confounding? Why do I have to do matching?
4) Out of 60 features, I would like to do matching based on 4 variables. How do I do this for my full dataset? Is there any python package to do this?
Can someone help me on how to do this?
 A: 
1) Are all my independent variables X1,X2...Xn called as exposure variables?

The term "exposure variable" comes mainly from the epidemiology and causal inference literature. It is not completely well defined, but usually there is one (main) exposure, an outcome, and the other variables are either competing exposures, or confounders (some could be mediators but including a mediator in a multivariable regression model is usually ill advised).  In your case you are interesred in prediction (classification), not inference and the usual terminology is "predictors" or "independent variables"

2) I see people usually do matching based on demographics like Age etc. Is it to infer what factors really influence the outcome if we keep Age constant. Am I right to understand this way?

Yes, because age is often a confounder so keeping it constant by matching can help to remove confounder bias.

3) If I put all the variables in logistic regression model, doesn't that account for confounding? Why do I have to do matching?

You don't have to do both. Matching is more commonly done when you are interesred in inference (explanation). You should be careful before just adding all your variables into a model without thinking. Again, since you are not interesred in inference, this is less of a concern.

4) Out of 60 features, I would like to do matching based on 4 variables. How do I do this for my full dataset? Is there any python package to do this?

This doesn't really make sense. There are many methods for variable selection. Why do you want to use matching ?
