I have in my dataset a feature named
distances which ranges goes from 200 to 12000 (more or less). Since the other features have got values under 50 I need to do some transformations in
The first thing that came to my mind is to normalise it, to keep this feature in a range from 0 to 10 for example. But with this approach I may have lot's of different value which may generate too many splits.
The other approach I consider is make ranges. For example
From 0 to 1000 => 1 From 1000 to 3000 => 2 From 3000 to 6000 => 3 From 6000 to 12000 => 4 //Or +6000 => 4
I believe this approach will be better since the decision three will have just 4 branches for this split.
Now my questions:
Is the correct approach to assign ranges on our own to a feature of this sort, or is it better to just normalise and then use some algorithm to set the ranges for us?
In case we are the ones who should decide the ranges, is it correct my example? Should be constant the range of the groups, or at least lineal the relationship between the ranges and the unit assigned.
Something like this:
From 0 to 3000 => 1 From 3000 to 6000 => 2 From 6000 to 9000 => 3 From 9000 to 12000 => 4 //Or +9000 => 4
The reason why I followed the first approach is because
distances has got more observations with lower values than high values. So I was trying to get a balanced feature with a similar amount of observations in each of the 4 categories.
With the second approach almost all the observations will be of type 1 or 2, since most of the
distances are less than 5000 units. However I am not sure if this is something I should be concern about in Regression Decision Trees.