For an assignment for a ML Online course I have to find the best classifier for a given data set using 4 different methods: Logistic regression, Decision tree, Support Vectors and K Nearest Neighbours. The data was already pre-processed (for some reason..) for us, although of course we can make further changes. This is about a data set predicting loan paying based on age, education, gender, etc..
1) One thing I do not quite understand why they did was so-called 'hot encoding' using pandas get_dummies. I get the need to convert categorical variables to numeric variables as some methods require only integers, but, instead of changing the Education features from Bachelor, College, HighSchool to simply 0, 1 and 2 (maintaining a single column), the outcome of this (as many of you probably know) is 3 new columns with 0 or 1 on each row depending on the education type of this customer.
If there is a need for everything to be binary (0 or 1), then why are the other columns left with continuous or discrete (>2) numeric variables?
2) Also, I assume each method requires different pre-processing/normalisation steps? Here they have transofred the feature vector by preprocessing.StandardScaler().fit(X).transform(X), is this pretty standard or other methods exist, and are they more suitable for certain algorithms/
3) What is the best way to learn new and interesting techniques for cleaning/pre-processing? Looking at existing code online? Is there a good place where I can find this?
Thanks, first steps in ML training :)