make_column_transformer#
- sklearn.compose.make_column_transformer(*transformers, remainder='drop', sparse_threshold=0.3, n_jobs=None, verbose=False, verbose_feature_names_out=True, force_int_remainder_cols='deprecated')[Quelle]#
Konstruiert einen ColumnTransformer aus den gegebenen Transformern.
Dies ist eine Kurzform für den Konstruktor ColumnTransformer; er erfordert keine und erlaubt keine Benennung der Transformer. Stattdessen werden ihnen Namen basierend auf ihren Typen automatisch zugewiesen. Er erlaubt auch kein Gewichtung mit
transformer_weights.Lesen Sie mehr im Benutzerhandbuch.
- Parameter:
- *transformersTupel
Tupel der Form (transformer, columns), die die auf Teilmengen der Daten anzuwendenden Transformer-Objekte spezifizieren.
- transformer{‘drop’, ‘passthrough’} oder Estimator
Estimator muss fit und transform unterstützen. Speziell gekennzeichnete Zeichenketten 'drop' und 'passthrough' werden ebenfalls akzeptiert, um anzugeben, dass die Spalten gelöscht oder unverändert durchgelassen werden sollen.
- columnsstr, array-ähnlich von str, int, array-ähnlich von int, slice, array-ähnlich von bool oder callable
Indiziert die Daten auf ihrer zweiten Achse. Ganzzahlen werden als positionelle Spalten interpretiert, während Zeichenketten DataFrame-Spalten nach Namen referenzieren können. Eine skalare Zeichenkette oder Ganzzahl sollte verwendet werden, wo
transformererwartet, dass X ein 1D-Array-ähnliches Objekt (Vektor) ist, andernfalls wird ein 2D-Array an den Transformer übergeben. Ein aufrufbares Objekt erhält die EingabedatenXund kann jedes der oben genannten zurückgeben. Um mehrere Spalten nach Namen oder dtype auszuwählen, können Siemake_column_selectorverwenden.
- remainder{‘drop’, ‘passthrough’} oder Estimator, Standardwert=’drop’
Standardmäßig werden nur die in
transformersspezifizierten Spalten transformiert und im Output kombiniert, und die nicht spezifizierten Spalten werden gelöscht. (Standardwert von'drop'). Durch die Angabe vonremainder='passthrough'werden alle verbleibenden Spalten, die nicht intransformersspezifiziert wurden, automatisch durchgelassen. Diese Teilmenge von Spalten wird mit der Ausgabe der Transformer verkettet. Durch Setzen vonremainderauf einen Estimator werden die verbleibenden nicht spezifizierten Spalten denremainderEstimator verwenden. Der Estimator muss fit und transform unterstützen.- sparse_thresholdfloat, Standardwert=0.3
Wenn die transformierte Ausgabe eine Mischung aus spärlichen und dichten Daten enthält, wird sie als spärliche Matrix gestapelt, wenn die Dichte niedriger als dieser Wert ist. Verwenden Sie
sparse_threshold=0, um immer dicht zurückzugeben. Wenn die transformierte Ausgabe nur spärliche oder nur dichte Daten enthält, wird das gestapelte Ergebnis entsprechend spärlich oder dicht zurückgegeben, und dieses Schlüsselwort wird ignoriert.- n_jobsint, default=None
Anzahl der parallel auszuführenden Jobs.
Nonebedeutet 1, es sei denn, es befindet sich in einemjoblib.parallel_backendKontext.-1bedeutet die Verwendung aller Prozessoren. Siehe Glossar für weitere Details.- verbosebool, default=False
Wenn True, wird die Zeit, die für das Anpassen jedes Transformers benötigt wird, während seiner Fertigstellung ausgegeben.
- verbose_feature_names_outbool, Standardwert=True
Wenn True, wird
ColumnTransformer.get_feature_names_outallen Feature-Namen den Namen des Transformers voranstellen, der dieses Feature generiert hat. Wenn False, wirdColumnTransformer.get_feature_names_outkeine Feature-Namen voranstellen und einen Fehler ausgeben, wenn die Feature-Namen nicht eindeutig sind.Hinzugefügt in Version 1.0.
- force_int_remainder_colsbool, Standardwert=True
Dieser Parameter hat keine Auswirkung.
Hinweis
Wenn Sie die Liste der Spalten für die verbleibenden Spalten nicht über das als
ColumnTransformer.transformers_ausgestattete Attribut abrufen, müssen Sie diesen Parameter nicht setzen.Hinzugefügt in Version 1.5.
Geändert in Version 1.7: Der Standardwert für
force_int_remainder_colswird sich vonTruezuFalsein Version 1.7 ändern.Veraltet seit Version 1.7:
force_int_remainder_colsist veraltet und wird in Version 1.9 entfernt.
- Gibt zurück:
- ctColumnTransformer
Gibt ein
ColumnTransformerObjekt zurück.
Siehe auch
ColumnTransformerKlasse, die es ermöglicht, die Ausgaben mehrerer Transformer-Objekte, die auf Spaltenteil-Datensätzen verwendet werden, zu einem einzigen Merkmalsraum zu kombinieren.
Beispiele
>>> from sklearn.preprocessing import StandardScaler, OneHotEncoder >>> from sklearn.compose import make_column_transformer >>> make_column_transformer( ... (StandardScaler(), ['numerical_column']), ... (OneHotEncoder(), ['categorical_column'])) ColumnTransformer(transformers=[('standardscaler', StandardScaler(...), ['numerical_column']), ('onehotencoder', OneHotEncoder(...), ['categorical_column'])])
Galeriebeispiele#
Unterstützung für kategorische Merkmale in Gradient Boosting
Häufige Fallstricke bei der Interpretation von Koeffizienten linearer Modelle