nemos.basis._transformer_basis.TransformerBasis.set_params#

TransformerBasis.set_params(**parameters)[source]#

Set TransformerBasis parameters.

When used with sklearn.model_selection, users can set either the basis attribute directly or the parameters of the underlying Basis, but not both.

Return type:

TransformerBasis

Examples

>>> from nemos.basis import BSplineEval, MSplineEval, TransformerBasis
>>> basis = MSplineEval(10)
>>> transformer_basis = TransformerBasis(basis=basis)
>>> # setting parameters of basis is allowed
>>> print(transformer_basis.set_params(n_basis_funcs=8).n_basis_funcs)
8
>>> # setting basis directly is allowed
>>> print(type(transformer_basis.set_params(basis=BSplineEval(10)).basis))
<class 'nemos.basis.basis.BSplineEval'>
>>> # mixing is not allowed, this will raise an exception
>>> try:
...     transformer_basis.set_params(basis=BSplineEval(10), n_basis_funcs=2)
... except ValueError as e:
...     print(repr(e))
ValueError('Set either new basis object or parameters for existing basis, not both.')