""" ============================================================= SKALOWANIE CECH – Standaryzacja StandardScaler (Z-score) Materiał dydaktyczny ============================================================= """ import numpy as np from sklearn import preprocessing # ── Przykładowa cecha ───────────────────────────────────────────────────────── x = np.array([[-1000.1], [ -200.2], [ 500.5], [ 600.6], [ 9000.9]]) print("Oryginalna cecha:") print(x) # ── Utworzenie przelicznika StandardScaler ──────────────────────────────────── scaler = preprocessing.StandardScaler() # ── Dopasowanie i transformacja cechy ──────────────────────────────────────── standardized = scaler.fit_transform(x) print("\nPo standaryzacji (Z-score):") print(standardized) # ── Parametry wyznaczone przez scaler ──────────────────────────────────────── print(f"\nŚrednia (μ) : {scaler.mean_[0]:.4f}") print(f"Odchylenie standardowe (σ): {scaler.scale_[0]:.4f}") # ── Weryfikacja: średnia i odchylenie po standaryzacji ──────────────────────── print(f"\nŚrednia po standaryzacji : {standardized.mean():.10f} (≈ 0)") print(f"Odch. std po standaryzacji: {standardized.std():.10f} (≈ 1)") # ── Odwrotna transformacja – powrót do oryginalnych wartości ────────────────── odwrocona = scaler.inverse_transform(standardized) print("\nOdwrotna transformacja (powrót do oryginału):") print(odwrocona) # ── Porównanie w tabeli ─────────────────────────────────────────────────────── print("\n{:>12} {:>22}".format("Oryginał", "Po standaryzacji (Z-score)")) print("-" * 38) for orig, std_val in zip(x.flatten(), standardized.flatten()): print(f"{orig:>12.1f} {std_val:>22.4f}")