Sequentially apply a list of transforms and a final estimator.
Intermediate steps of the pipeline must be transforms. That is, they
must implement fit and transform methods.
The final estimator only needs to implement fit.
The purpose of the pipeline is to assemble several steps that can be
cross-validated together while setting different parameters. This simplifies code and allows for
deploying an estimator and preprocessing together, e.g. with Pipeline.to_gbq(...).
Methods
__repr__
__repr__()
Print the estimator's constructor with all non-default parameter values.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-28 UTC."],[],[],null,["# Class Pipeline (2.17.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.17.0 (latest)](/python/docs/reference/bigframes/latest/bigframes.ml.pipeline.Pipeline)\n- [2.16.0](/python/docs/reference/bigframes/2.16.0/bigframes.ml.pipeline.Pipeline)\n- [2.15.0](/python/docs/reference/bigframes/2.15.0/bigframes.ml.pipeline.Pipeline)\n- [2.14.0](/python/docs/reference/bigframes/2.14.0/bigframes.ml.pipeline.Pipeline)\n- [2.13.0](/python/docs/reference/bigframes/2.13.0/bigframes.ml.pipeline.Pipeline)\n- [2.12.0](/python/docs/reference/bigframes/2.12.0/bigframes.ml.pipeline.Pipeline)\n- [2.11.0](/python/docs/reference/bigframes/2.11.0/bigframes.ml.pipeline.Pipeline)\n- [2.10.0](/python/docs/reference/bigframes/2.10.0/bigframes.ml.pipeline.Pipeline)\n- [2.9.0](/python/docs/reference/bigframes/2.9.0/bigframes.ml.pipeline.Pipeline)\n- [2.8.0](/python/docs/reference/bigframes/2.8.0/bigframes.ml.pipeline.Pipeline)\n- [2.7.0](/python/docs/reference/bigframes/2.7.0/bigframes.ml.pipeline.Pipeline)\n- [2.6.0](/python/docs/reference/bigframes/2.6.0/bigframes.ml.pipeline.Pipeline)\n- [2.5.0](/python/docs/reference/bigframes/2.5.0/bigframes.ml.pipeline.Pipeline)\n- [2.4.0](/python/docs/reference/bigframes/2.4.0/bigframes.ml.pipeline.Pipeline)\n- [2.3.0](/python/docs/reference/bigframes/2.3.0/bigframes.ml.pipeline.Pipeline)\n- [2.2.0](/python/docs/reference/bigframes/2.2.0/bigframes.ml.pipeline.Pipeline)\n- [2.1.0](/python/docs/reference/bigframes/2.1.0/bigframes.ml.pipeline.Pipeline)\n- [2.0.0](/python/docs/reference/bigframes/2.0.0/bigframes.ml.pipeline.Pipeline)\n- [1.42.0](/python/docs/reference/bigframes/1.42.0/bigframes.ml.pipeline.Pipeline)\n- [1.41.0](/python/docs/reference/bigframes/1.41.0/bigframes.ml.pipeline.Pipeline)\n- [1.40.0](/python/docs/reference/bigframes/1.40.0/bigframes.ml.pipeline.Pipeline)\n- [1.39.0](/python/docs/reference/bigframes/1.39.0/bigframes.ml.pipeline.Pipeline)\n- [1.38.0](/python/docs/reference/bigframes/1.38.0/bigframes.ml.pipeline.Pipeline)\n- [1.37.0](/python/docs/reference/bigframes/1.37.0/bigframes.ml.pipeline.Pipeline)\n- [1.36.0](/python/docs/reference/bigframes/1.36.0/bigframes.ml.pipeline.Pipeline)\n- [1.35.0](/python/docs/reference/bigframes/1.35.0/bigframes.ml.pipeline.Pipeline)\n- [1.34.0](/python/docs/reference/bigframes/1.34.0/bigframes.ml.pipeline.Pipeline)\n- [1.33.0](/python/docs/reference/bigframes/1.33.0/bigframes.ml.pipeline.Pipeline)\n- [1.32.0](/python/docs/reference/bigframes/1.32.0/bigframes.ml.pipeline.Pipeline)\n- [1.31.0](/python/docs/reference/bigframes/1.31.0/bigframes.ml.pipeline.Pipeline)\n- [1.30.0](/python/docs/reference/bigframes/1.30.0/bigframes.ml.pipeline.Pipeline)\n- [1.29.0](/python/docs/reference/bigframes/1.29.0/bigframes.ml.pipeline.Pipeline)\n- [1.28.0](/python/docs/reference/bigframes/1.28.0/bigframes.ml.pipeline.Pipeline)\n- [1.27.0](/python/docs/reference/bigframes/1.27.0/bigframes.ml.pipeline.Pipeline)\n- [1.26.0](/python/docs/reference/bigframes/1.26.0/bigframes.ml.pipeline.Pipeline)\n- [1.25.0](/python/docs/reference/bigframes/1.25.0/bigframes.ml.pipeline.Pipeline)\n- [1.24.0](/python/docs/reference/bigframes/1.24.0/bigframes.ml.pipeline.Pipeline)\n- [1.22.0](/python/docs/reference/bigframes/1.22.0/bigframes.ml.pipeline.Pipeline)\n- [1.21.0](/python/docs/reference/bigframes/1.21.0/bigframes.ml.pipeline.Pipeline)\n- [1.20.0](/python/docs/reference/bigframes/1.20.0/bigframes.ml.pipeline.Pipeline)\n- [1.19.0](/python/docs/reference/bigframes/1.19.0/bigframes.ml.pipeline.Pipeline)\n- [1.18.0](/python/docs/reference/bigframes/1.18.0/bigframes.ml.pipeline.Pipeline)\n- [1.17.0](/python/docs/reference/bigframes/1.17.0/bigframes.ml.pipeline.Pipeline)\n- [1.16.0](/python/docs/reference/bigframes/1.16.0/bigframes.ml.pipeline.Pipeline)\n- [1.15.0](/python/docs/reference/bigframes/1.15.0/bigframes.ml.pipeline.Pipeline)\n- [1.14.0](/python/docs/reference/bigframes/1.14.0/bigframes.ml.pipeline.Pipeline)\n- [1.13.0](/python/docs/reference/bigframes/1.13.0/bigframes.ml.pipeline.Pipeline)\n- [1.12.0](/python/docs/reference/bigframes/1.12.0/bigframes.ml.pipeline.Pipeline)\n- [1.11.1](/python/docs/reference/bigframes/1.11.1/bigframes.ml.pipeline.Pipeline)\n- [1.10.0](/python/docs/reference/bigframes/1.10.0/bigframes.ml.pipeline.Pipeline)\n- [1.9.0](/python/docs/reference/bigframes/1.9.0/bigframes.ml.pipeline.Pipeline)\n- [1.8.0](/python/docs/reference/bigframes/1.8.0/bigframes.ml.pipeline.Pipeline)\n- [1.7.0](/python/docs/reference/bigframes/1.7.0/bigframes.ml.pipeline.Pipeline)\n- [1.6.0](/python/docs/reference/bigframes/1.6.0/bigframes.ml.pipeline.Pipeline)\n- [1.5.0](/python/docs/reference/bigframes/1.5.0/bigframes.ml.pipeline.Pipeline)\n- [1.4.0](/python/docs/reference/bigframes/1.4.0/bigframes.ml.pipeline.Pipeline)\n- [1.3.0](/python/docs/reference/bigframes/1.3.0/bigframes.ml.pipeline.Pipeline)\n- [1.2.0](/python/docs/reference/bigframes/1.2.0/bigframes.ml.pipeline.Pipeline)\n- [1.1.0](/python/docs/reference/bigframes/1.1.0/bigframes.ml.pipeline.Pipeline)\n- [1.0.0](/python/docs/reference/bigframes/1.0.0/bigframes.ml.pipeline.Pipeline)\n- [0.26.0](/python/docs/reference/bigframes/0.26.0/bigframes.ml.pipeline.Pipeline)\n- [0.25.0](/python/docs/reference/bigframes/0.25.0/bigframes.ml.pipeline.Pipeline)\n- [0.24.0](/python/docs/reference/bigframes/0.24.0/bigframes.ml.pipeline.Pipeline)\n- [0.23.0](/python/docs/reference/bigframes/0.23.0/bigframes.ml.pipeline.Pipeline)\n- [0.22.0](/python/docs/reference/bigframes/0.22.0/bigframes.ml.pipeline.Pipeline)\n- [0.21.0](/python/docs/reference/bigframes/0.21.0/bigframes.ml.pipeline.Pipeline)\n- [0.20.1](/python/docs/reference/bigframes/0.20.1/bigframes.ml.pipeline.Pipeline)\n- [0.19.2](/python/docs/reference/bigframes/0.19.2/bigframes.ml.pipeline.Pipeline)\n- [0.18.0](/python/docs/reference/bigframes/0.18.0/bigframes.ml.pipeline.Pipeline)\n- [0.17.0](/python/docs/reference/bigframes/0.17.0/bigframes.ml.pipeline.Pipeline)\n- [0.16.0](/python/docs/reference/bigframes/0.16.0/bigframes.ml.pipeline.Pipeline)\n- [0.15.0](/python/docs/reference/bigframes/0.15.0/bigframes.ml.pipeline.Pipeline)\n- [0.14.1](/python/docs/reference/bigframes/0.14.1/bigframes.ml.pipeline.Pipeline)\n- [0.13.0](/python/docs/reference/bigframes/0.13.0/bigframes.ml.pipeline.Pipeline)\n- [0.12.0](/python/docs/reference/bigframes/0.12.0/bigframes.ml.pipeline.Pipeline)\n- [0.11.0](/python/docs/reference/bigframes/0.11.0/bigframes.ml.pipeline.Pipeline)\n- [0.10.0](/python/docs/reference/bigframes/0.10.0/bigframes.ml.pipeline.Pipeline)\n- [0.9.0](/python/docs/reference/bigframes/0.9.0/bigframes.ml.pipeline.Pipeline)\n- [0.8.0](/python/docs/reference/bigframes/0.8.0/bigframes.ml.pipeline.Pipeline)\n- [0.7.0](/python/docs/reference/bigframes/0.7.0/bigframes.ml.pipeline.Pipeline)\n- [0.6.0](/python/docs/reference/bigframes/0.6.0/bigframes.ml.pipeline.Pipeline)\n- [0.5.0](/python/docs/reference/bigframes/0.5.0/bigframes.ml.pipeline.Pipeline)\n- [0.4.0](/python/docs/reference/bigframes/0.4.0/bigframes.ml.pipeline.Pipeline)\n- [0.3.0](/python/docs/reference/bigframes/0.3.0/bigframes.ml.pipeline.Pipeline)\n- [0.2.0](/python/docs/reference/bigframes/0.2.0/bigframes.ml.pipeline.Pipeline) \n\n Pipeline(steps: typing.List[typing.Tuple[str, bigframes.ml.base.BaseEstimator]])\n\nPipeline of transforms with a final estimator.\n\nSequentially apply a list of transforms and a final estimator.\nIntermediate steps of the pipeline must be `transforms`. That is, they\nmust implement `fit` and `transform` methods.\nThe final estimator only needs to implement `fit`.\n\nThe purpose of the pipeline is to assemble several steps that can be\ncross-validated together while setting different parameters. This simplifies code and allows for\ndeploying an estimator and preprocessing together, e.g. with `Pipeline.to_gbq(...).`\n\nMethods\n-------\n\n### __repr__\n\n __repr__()\n\nPrint the estimator's constructor with all non-default parameter values.\n\n### fit\n\n fit(\n X: typing.Union[bigframes.dataframe.DataFrame, bigframes.series.Series],\n y: typing.Optional[\n typing.Union[bigframes.dataframe.DataFrame, bigframes.series.Series]\n ] = None,\n ) -\u003e bigframes.ml.pipeline.Pipeline\n\nFit the model.\n\nFit all the transformers one after the other and transform the\ndata. Finally, fit the transformed data using the final estimator.\n\n### get_params\n\n get_params(deep: bool = True) -\u003e typing.Dict[str, typing.Any]\n\nGet parameters for this estimator.\n\n### predict\n\n predict(\n X: typing.Union[\n bigframes.dataframe.DataFrame,\n bigframes.series.Series,\n pandas.core.frame.DataFrame,\n pandas.core.series.Series,\n ],\n ) -\u003e bigframes.dataframe.DataFrame\n\nAPI documentation for `predict` method.\n\n### score\n\n score(\n X: typing.Union[bigframes.dataframe.DataFrame, bigframes.series.Series],\n y: typing.Optional[\n typing.Union[bigframes.dataframe.DataFrame, bigframes.series.Series]\n ] = None,\n ) -\u003e bigframes.dataframe.DataFrame\n\nAPI documentation for `score` method.\n\n### to_gbq\n\n to_gbq(model_name: str, replace: bool = False) -\u003e bigframes.ml.pipeline.Pipeline\n\nSave the pipeline to BigQuery."]]