Algorithm:
If filter is given in the initialization, index is
updated to only those elements for which the value of
attribute/variable filter is
larger than zero. It then invokes the run() method of
RegressionModel passing all arguments where
index is possibly modified. The returned value of this call
is considered to be the prediction of the natural logarithm of total
land value for each element of dataset included in
index. Each of those values is then exponentiated and split
into residential and non-residential land value, using the attribute
``fraction_residential_land'' (this must be a known
attribute of dataset).
Attributes ``residential_land_value'' and
``nonresidential_land_value'' (which also are expected to be known
attributes of the dataset) are modified by
replacing current values with the computed values.
If any of the computed values exceeds the maximal value of float32, a warning is issued and the value is clipped to the maximal possible value.
Output:
The method returns an index of values within dataset for which the land
value was modified.