The following is my thought on the first exercise of lecture 12 regarding the representation of ranged type variables:
From a mathematical point of view, the data preprocessing of any data has the goal to find a function, which takes the raw data as an input and gives an output, which can be processed by the computer. If one can find such a function, which is bijective and therefore invertible, the type of the input data does not matter. Take as example the age of a person, where the age is divided into the ranges [0-5],[6-10],[11-15],.... Since there is a function f, for example f: Raw_Data -> Natural Numbers with
f([0-5]) = 1, f([6-10]) = 2, f([11-15]) = 3 ....
which is bijective and therefore invertible, it is reasonable to use this kind of encoding.
To conclude, whenever one can find an invertible function f it does not matter which type the input data has and it is therefore reasonable to encode the range type variables with numeric variables.