DocumentationClassesSplineTransformer

Class: SplineTransformer

Generate univariate B-spline bases for features.

Generate a new feature matrix consisting of n_splines=n_knots + degree \- 1 (n_knots \- 1 for extrapolation="periodic") spline basis functions (B-splines) of polynomial order=degree for each feature.

In order to learn more about the SplineTransformer class go to: Time-related feature engineering

Read more in the User Guide.

Python Reference

Constructors

new SplineTransformer()

new SplineTransformer(opts?): SplineTransformer

Parameters

ParameterTypeDescription
opts?object-
opts.degree?numberThe polynomial degree of the spline basis. Must be a non-negative integer.
opts.extrapolation?"linear" | "constant" | "error" | "continue" | "periodic"If ‘error’, values outside the min and max values of the training features raises a ValueError. If ‘constant’, the value of the splines at minimum and maximum value of the features is used as constant extrapolation. If ‘linear’, a linear extrapolation is used. If ‘continue’, the splines are extrapolated as is, i.e. option extrapolate=True in scipy.interpolate.BSpline. If ‘periodic’, periodic splines with a periodicity equal to the distance between the first and last knot are used. Periodic splines enforce equal function values and derivatives at the first and last knot. For example, this makes it possible to avoid introducing an arbitrary jump between Dec 31st and Jan 1st in spline features derived from a naturally periodic “day-of-year” input feature. In this case it is recommended to manually set the knot values to control the period.
opts.include_bias?booleanIf false, then the last spline element inside the data range of a feature is dropped. As B-splines sum to one over the spline basis functions for each data point, they implicitly include a bias term, i.e. a column of ones. It acts as an intercept term in a linear models.
opts.knots?ArrayLike[] | "uniform" | "quantile"Set knot positions such that first knot <= features <= last knot.
opts.n_knots?numberNumber of knots of the splines if knots equals one of {‘uniform’, ‘quantile’}. Must be larger or equal 2. Ignored if knots is array-like.
opts.order?"C" | "F"Order of output array in the dense case. 'F' order is faster to compute, but may slow down subsequent estimators.
opts.sparse_output?booleanWill return sparse CSR matrix if set true else will return an array. This option is only available with scipy>=1.8.

Returns SplineTransformer

Defined in generated/preprocessing/SplineTransformer.ts:27

Properties

PropertyTypeDefault valueDefined in
_isDisposedbooleanfalsegenerated/preprocessing/SplineTransformer.ts:25
_isInitializedbooleanfalsegenerated/preprocessing/SplineTransformer.ts:24
_pyPythonBridgeundefinedgenerated/preprocessing/SplineTransformer.ts:23
idstringundefinedgenerated/preprocessing/SplineTransformer.ts:20
optsanyundefinedgenerated/preprocessing/SplineTransformer.ts:21

Accessors

bsplines_

Get Signature

get bsplines_(): Promise<any[]>

List of BSplines objects, one for each feature.

Returns Promise<any[]>

Defined in generated/preprocessing/SplineTransformer.ts:428


feature_names_in_

Get Signature

get feature_names_in_(): Promise<ArrayLike>

Names of features seen during fit. Defined only when X has feature names that are all strings.

Returns Promise<ArrayLike>

Defined in generated/preprocessing/SplineTransformer.ts:482


n_features_in_

Get Signature

get n_features_in_(): Promise<number>

The total number of input features.

Returns Promise<number>

Defined in generated/preprocessing/SplineTransformer.ts:455


n_features_out_

Get Signature

get n_features_out_(): Promise<number>

The total number of output features, which is computed as n_features \* n_splines, where n_splines is the number of bases elements of the B-splines, n_knots + degree \- 1 for non-periodic splines and n_knots \- 1 for periodic ones. If include_bias=False, then it is only n_features \* (n_splines \- 1).

Returns Promise<number>

Defined in generated/preprocessing/SplineTransformer.ts:509


py

Get Signature

get py(): PythonBridge

Returns PythonBridge

Set Signature

set py(pythonBridge): void

Parameters

ParameterType
pythonBridgePythonBridge

Returns void

Defined in generated/preprocessing/SplineTransformer.ts:81

Methods

dispose()

dispose(): Promise<void>

Disposes of the underlying Python resources.

Once dispose() is called, the instance is no longer usable.

Returns Promise<void>

Defined in generated/preprocessing/SplineTransformer.ts:135


fit()

fit(opts): Promise<any>

Compute knot positions of splines.

Parameters

ParameterTypeDescription
optsobject-
opts.sample_weight?ArrayLikeIndividual weights for each sample. Used to calculate quantiles if knots="quantile". For knots="uniform", zero weighted observations are ignored for finding the min and max of X.
opts.X?ArrayLike[]The data.
opts.y?anyIgnored.

Returns Promise<any>

Defined in generated/preprocessing/SplineTransformer.ts:152


fit_transform()

fit_transform(opts): Promise<any[]>

Fit to data, then transform it.

Fits transformer to X and y with optional parameters fit_params and returns a transformed version of X.

Parameters

ParameterTypeDescription
optsobject-
opts.fit_params?anyAdditional fit parameters.
opts.X?ArrayLike[]Input samples.
opts.y?ArrayLikeTarget values (undefined for unsupervised transformations).

Returns Promise<any[]>

Defined in generated/preprocessing/SplineTransformer.ts:198


get_feature_names_out()

get_feature_names_out(opts): Promise<any>

Get output feature names for transformation.

Parameters

ParameterTypeDescription
optsobject-
opts.input_features?anyInput features.

Returns Promise<any>

Defined in generated/preprocessing/SplineTransformer.ts:244


get_metadata_routing()

get_metadata_routing(opts): Promise<any>

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Parameters

ParameterTypeDescription
optsobject-
opts.routing?anyA MetadataRequest encapsulating routing information.

Returns Promise<any>

Defined in generated/preprocessing/SplineTransformer.ts:282


init()

init(py): Promise<void>

Initializes the underlying Python resources.

This instance is not usable until the Promise returned by init() resolves.

Parameters

ParameterType
pyPythonBridge

Returns Promise<void>

Defined in generated/preprocessing/SplineTransformer.ts:94


set_fit_request()

set_fit_request(opts): Promise<any>

Request metadata passed to the fit method.

Note that this method is only relevant if enable_metadata_routing=True (see sklearn.set_config). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

Parameters

ParameterTypeDescription
optsobject-
opts.sample_weight?string | booleanMetadata routing for sample_weight parameter in fit.

Returns Promise<any>

Defined in generated/preprocessing/SplineTransformer.ts:322


set_output()

set_output(opts): Promise<any>

Set output container.

See Introducing the set_output API for an example on how to use the API.

Parameters

ParameterTypeDescription
optsobject-
opts.transform?"default" | "pandas" | "polars"Configure output of transform and fit_transform.

Returns Promise<any>

Defined in generated/preprocessing/SplineTransformer.ts:360


transform()

transform(opts): Promise<ArrayLike>

Transform each feature data to B-splines.

Parameters

ParameterTypeDescription
optsobject-
opts.X?ArrayLike[]The data to transform.

Returns Promise<ArrayLike>

Defined in generated/preprocessing/SplineTransformer.ts:394