Binarizer#

class sklearn.preprocessing.Binarizer(*, threshold=0.0, copy=True)[source]#

Binarisiert Daten (Setzt Merkmalswerte auf 0 oder 1) gemäß einer Schwelle.

Werte, die größer als der Schwellenwert sind, werden zu 1, während Werte, die kleiner oder gleich dem Schwellenwert sind, zu 0 werden. Mit dem Standard-Schwellenwert von 0 werden nur positive Werte zu 1.

Die Binarisierung ist eine gängige Operation auf Textzählungsdaten, bei der der Analytiker entscheiden kann, nur die An- oder Abwesenheit eines Merkmals zu berücksichtigen und nicht beispielsweise eine quantifizierte Anzahl von Vorkommen.

Sie kann auch als Vorverarbeitungsschritt für Schätzer verwendet werden, die boolesche Zufallsvariablen berücksichtigen (z. B. im Bayes'schen Kontext, modelliert mit der Bernoulliverteilung).

Lesen Sie mehr im Benutzerhandbuch.

Parameter:
thresholdfloat, default=0.0

Merkmalswerte unter oder gleich diesem Wert werden durch 0 ersetzt, darüber durch 1. Der Schwellenwert darf für Operationen auf spärlichen Matrizen nicht kleiner als 0 sein.

copybool, Standard=True

Auf False setzen, um eine inplace Binarisierung durchzuführen und eine Kopie zu vermeiden (wenn die Eingabe bereits ein numpy-Array oder eine scipy.sparse CSR-Matrix ist).

Attribute:
n_features_in_int

Anzahl der während des fits gesehenen Merkmale.

Hinzugefügt in Version 0.24.

feature_names_in_ndarray mit Form (n_features_in_,)

Namen der während fit gesehenen Merkmale. Nur definiert, wenn X Merkmalnamen hat, die alle Zeichenketten sind.

Hinzugefügt in Version 1.0.

Siehe auch

binarize

Äquivalente Funktion ohne die Estimator-API.

KBinsDiscretizer

Teilt kontinuierliche Daten in Intervalle auf.

OneHotEncoder

Kodiert kategoriale Merkmale als eine One-Hot-numerische Matrix.

Anmerkungen

Wenn die Eingabe eine spärliche Matrix ist, werden nur die Nicht-Null-Werte von der Binarizer-Klasse aktualisiert.

Dieser Schätzer ist zustandslos und muss nicht angepasst werden. Wir empfehlen jedoch, fit_transform anstelle von transform aufzurufen, da die Parametervalidierung nur in fit durchgeführt wird.

Beispiele

>>> from sklearn.preprocessing import Binarizer
>>> X = [[ 1., -1.,  2.],
...      [ 2.,  0.,  0.],
...      [ 0.,  1., -1.]]
>>> transformer = Binarizer().fit(X)  # fit does nothing.
>>> transformer
Binarizer()
>>> transformer.transform(X)
array([[1., 0., 1.],
       [1., 0., 0.],
       [0., 1., 0.]])
fit(X, y=None)[source]#

Validiert nur die Parameter des Estimators.

Diese Methode erlaubt: (i) die Validierung der Parameter des Estimators und (ii) Konsistenz mit der scikit-learn Transformer API.

Parameter:
X{array-like, sparse matrix} der Form (n_samples, n_features)

Die Daten.

yNone

Ignoriert.

Gibt zurück:
selfobject

Gefitteter Transformer.

fit_transform(X, y=None, **fit_params)[source]#

An Daten anpassen, dann transformieren.

Passt den Transformer an X und y mit optionalen Parametern fit_params an und gibt eine transformierte Version von X zurück.

Parameter:
Xarray-like der Form (n_samples, n_features)

Eingabestichproben.

yarray-like der Form (n_samples,) oder (n_samples, n_outputs), Standardwert=None

Zielwerte (None für unüberwachte Transformationen).

**fit_paramsdict

Zusätzliche Fit-Parameter. Nur übergeben, wenn der Estimator zusätzliche Parameter in seiner fit-Methode akzeptiert.

Gibt zurück:
X_newndarray array der Form (n_samples, n_features_new)

Transformiertes Array.

get_feature_names_out(input_features=None)[source]#

Holt die Ausgabemerkmale für die Transformation.

Parameter:
input_featuresarray-like von str oder None, default=None

Eingabemerkmale.

  • Wenn input_features None ist, werden feature_names_in_ als Merkmalnamen verwendet. Wenn feature_names_in_ nicht definiert ist, werden die folgenden Eingabemerkmalsnamen generiert: ["x0", "x1", ..., "x(n_features_in_ - 1)"].

  • Wenn input_features ein Array-ähnliches Objekt ist, muss input_features mit feature_names_in_ übereinstimmen, wenn feature_names_in_ definiert ist.

Gibt zurück:
feature_names_outndarray von str-Objekten

Gleich wie Eingabemerkmale.

get_metadata_routing()[source]#

Holt das Metadaten-Routing dieses Objekts.

Bitte prüfen Sie im Benutzerhandbuch, wie der Routing-Mechanismus funktioniert.

Gibt zurück:
routingMetadataRequest

Ein MetadataRequest, der Routing-Informationen kapselt.

get_params(deep=True)[source]#

Holt Parameter für diesen Schätzer.

Parameter:
deepbool, default=True

Wenn True, werden die Parameter für diesen Schätzer und die enthaltenen Unterobjekte, die Schätzer sind, zurückgegeben.

Gibt zurück:
paramsdict

Parameternamen, zugeordnet ihren Werten.

set_output(*, transform=None)[source]#

Ausgabecontainer festlegen.

Siehe Einführung in die set_output API für ein Beispiel zur Verwendung der API.

Parameter:
transform{“default”, “pandas”, “polars”}, default=None

Konfiguriert die Ausgabe von transform und fit_transform.

  • "default": Standardausgabeformat eines Transformers

  • "pandas": DataFrame-Ausgabe

  • "polars": Polars-Ausgabe

  • None: Die Transformationskonfiguration bleibt unverändert

Hinzugefügt in Version 1.4: Die Option "polars" wurde hinzugefügt.

Gibt zurück:
selfestimator instance

Schätzer-Instanz.

set_params(**params)[source]#

Setzt die Parameter dieses Schätzers.

Die Methode funktioniert sowohl bei einfachen Schätzern als auch bei verschachtelten Objekten (wie Pipeline). Letztere haben Parameter der Form <component>__<parameter>, so dass es möglich ist, jede Komponente eines verschachtelten Objekts zu aktualisieren.

Parameter:
**paramsdict

Schätzer-Parameter.

Gibt zurück:
selfestimator instance

Schätzer-Instanz.

set_transform_request(*, copy: bool | None | str = '$UNCHANGED$') Binarizer[source]#

Konfiguriert, ob Metadaten für die transform-Methode angefordert werden sollen.

Beachten Sie, dass diese Methode nur relevant ist, wenn dieser Schätzer als Unter-Schätzer innerhalb eines Meta-Schätzers verwendet wird und Metadaten-Routing mit enable_metadata_routing=True aktiviert ist (siehe sklearn.set_config). Bitte lesen Sie das Benutzerhandbuch, um zu erfahren, wie der Routing-Mechanismus funktioniert.

Die Optionen für jeden Parameter sind

  • True: Metadaten werden angefordert und, falls vorhanden, an transform weitergegeben. Die Anforderung wird ignoriert, wenn keine Metadaten bereitgestellt werden.

  • False: Metadaten werden nicht angefordert und die Meta-Schätzung übergibt sie nicht an transform.

  • None: Metadaten werden nicht angefordert und der Meta-Schätzer löst einen Fehler aus, wenn der Benutzer sie bereitstellt.

  • str: Metadaten sollten mit diesem Alias an den Meta-Schätzer übergeben werden und nicht mit dem ursprünglichen Namen.

Der Standardwert (sklearn.utils.metadata_routing.UNCHANGED) behält die bestehende Anforderung bei. Dies ermöglicht es Ihnen, die Anforderung für einige Parameter zu ändern und für andere nicht.

Hinzugefügt in Version 1.3.

Parameter:
copystr, True, False oder None, Standard=sklearn.utils.metadata_routing.UNCHANGED

Metadaten-Routing für den Parameter copy in transform.

Gibt zurück:
selfobject

Das aktualisierte Objekt.

transform(X, copy=None)[source]#

Binarisiert jedes Element von X.

Parameter:
X{array-like, sparse matrix} der Form (n_samples, n_features)

Die zu binarisierenden Daten, Element für Element. scipy.sparse Matrizen sollten im CSR-Format vorliegen, um eine unnötige Kopie zu vermeiden.

copybool

Kopiert die Eingabe X oder nicht.

Gibt zurück:
X_tr{ndarray, sparse matrix} mit der Form (n_samples, n_features)

Transformiertes Array.