model_formula

SamsRegressor.model_formula(model, idx=0)[source]

Creates the prediction formula of the fit for the encoded and normalized data. This function assumes the regressor was fitted with the result of model2Y2X. In that case, the model can be provided to automatically generate the correct labels.

Warning

This formula is the prediction formula of the encoded and normalized data. First apply factor normalization and then categorical encoding before applying this prediction formula.

>>> # Imports
>>> from pyoptex.utils import Factor
>>> from pyoptex.utils.design import encode_design
>>>
>>> # Example factors
>>> factors = [
>>>     Factor('A'),
>>>     Factor('B'),
>>>     Factor('C', type='categorical', levels=['L1', 'L2', 'L3'])
>>> ]
>>>
>>> # Compute derived parameters
>>> effect_types = np.array([
>>>     1 if f.is_continuous else len(f.levels)
>>>     for f in factors
>>> ])
>>> coords = [f.coords_ for f in factors]
>>>
>>> # Normalize the factors
>>> for f in factors:
>>>     data[str(f.name)] = f.normalize(data[str(f.name)])
>>>
>>> # Select correct order + to numpy
>>> data = data[[str(f.name) for f in factors]].to_numpy()
>>>
>>> # Encode
>>> data = encode_design(data, effect_types, coords=coords)
>>>
>>> # Transform according to the model
>>> data = Y2X(data)

Note

If you did not create Y2X using model2Y2X, use formula. You must manually specify the labels here.

Parameters

modelpd.DataFrame

The dataframe of the model used in model2Y2X.

idxint

The index of the model to be printed in models_.

Returns

formulastr

The prediction formula for encoded and normalized data.