Selects features based on their type.
This is practical when you want to apply different preprocessing steps to different kinds of features. For instance, a common usecase is to apply a
preprocessing.StandardScaler to numeric features and a
preprocessing.OneHotEncoder to categorical features.
Python types which you want to select. Under the hood, the
isinstancemethod will be used to check if a value is of a given type.
>>> import numbers >>> from river import compose >>> from river import linear_model >>> from river import preprocessing >>> num = compose.SelectType(numbers.Number) | preprocessing.StandardScaler() >>> cat = compose.SelectType(str) | preprocessing.OneHotEncoder() >>> model = (num + cat) | linear_model.LogisticRegression()
Update with a set of features
A lot of transformers don't actually have to do anything during the
learn_one step because they are stateless. For this reason the default behavior of this function is to do nothing. Transformers that however do something during the
learn_one can override this method.
- x (dict)
Transform a set of features
- x (dict)
dict: The transformed values.