fit()
und fit_transform()
gewundert? Diese beiden Funktionen erscheinen häufig während der Datenvorverarbeitung. Schauen wir uns ihre Unterschiede genauer an und veranschaulichen sie anhand von Beispielen.
Datenstandardisierung ist ein wichtiger Vorverarbeitungsschritt, der normalerweise die Berechnung verschiedener Parameter der Daten erfordert, wie z. B. Mittelwert, Minimum, Maximum und Varianz. fit_transform()
berechnet diese Parameter und wendet sie auf den Datensatz an, während fit()
diese Parameter nur berechnet und nicht auf den Datensatz anwendet.
Angenommen, wir haben ein kleines Datenarray:
data = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Verwenden Sie fit()
bzw. transform()
:
<code class="language-python">from sklearn.preprocessing import StandardScaler # 步骤 1 scaler = StandardScaler() # 步骤 2 scaler.fit(data) # 此处仅计算均值和标准差,不进行数据缩放 # 步骤 3 scaled_data = scaler.transform(data) # 现在 scaled_data 包含标准化后的数据</code>
Verwenden Sie fit_transform()
:
<code class="language-python">from sklearn.preprocessing import StandardScaler # 步骤 1 scaler = StandardScaler() # 步骤 2 scaled_data = scaler.fit_transform(data) # scaled_data 包含标准化后的数据</code>
Wir können sehen, dass durch die Verwendung von fit_transform()
ein zusätzlicher Schritt entfällt.
Welche Funktion Sie wählen, hängt von Ihrem spezifischen Anwendungsszenario ab. Wenn Sie zuerst die Parameter berechnen und dann die Transformation auf mehrere Datensätze (z. B. Trainings- und Testsätze) anwenden müssen, ist es besser, fit()
bzw. transform()
zu verwenden. Wenn Sie die Transformation jedoch nur auf einen einzelnen Datensatz anwenden müssen, kann fit_transform()
den Vorverarbeitungsprozess sauberer gestalten.
Das obige ist der detaillierte Inhalt vonFit vs. Fit_transform. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!