{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n# Displaying estimators and complex pipelines\n\nThis example illustrates different ways estimators and pipelines can be\ndisplayed.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Authors: The scikit-learn developers\n# SPDX-License-Identifier: BSD-3-Clause\n\nfrom sklearn.compose import make_column_transformer\nfrom sklearn.impute import SimpleImputer\nfrom sklearn.linear_model import LogisticRegression\nfrom sklearn.pipeline import make_pipeline\nfrom sklearn.preprocessing import OneHotEncoder, StandardScaler" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Compact text representation\n\nEstimators will only show the parameters that have been set to non-default\nvalues when displayed as a string. This reduces the visual noise and makes it\neasier to spot what the differences are when comparing instances.\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "lr = LogisticRegression(penalty=\"l1\")\nprint(lr)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Rich HTML representation\nIn notebooks estimators and pipelines will use a rich HTML representation.\nThis is particularly useful to summarise the\nstructure of pipelines and other composite estimators, with interactivity to\nprovide detail. Click on the example image below to expand Pipeline\nelements. See `visualizing_composite_estimators` for how you can use\nthis feature.\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "num_proc = make_pipeline(SimpleImputer(strategy=\"median\"), StandardScaler())\n\ncat_proc = make_pipeline(\n SimpleImputer(strategy=\"constant\", fill_value=\"missing\"),\n OneHotEncoder(handle_unknown=\"ignore\"),\n)\n\npreprocessor = make_column_transformer(\n (num_proc, (\"feat1\", \"feat3\")), (cat_proc, (\"feat0\", \"feat2\"))\n)\n\nclf = make_pipeline(preprocessor, LogisticRegression())\nclf" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.21" } }, "nbformat": 4, "nbformat_minor": 0 }