FeatureSelection.find_low_nvalues_features¶
- FeatureSelection.find_low_nvalues_features(**kwargs)¶
Esegue solo il filtro per le feature con un basso numero di valori unici.
Questo metodo è un wrapper attorno al metodo run, configurato per attivare specificamente il filtro delle feature con un basso numero di valori unici e disabilitare tutti gli altri filtri. Aggiorna lo stato dell’istanza in base ai risultati di questo singolo filtro.
Questa funzione trova le colonne che hanno un numero di valori distinti inferiore a una soglia specificata (min_unique_val, default 3). Ad esempio, se si imposta min_unique_val a 3, la funzione identificherà tutte le colonne che presentano solo 1 o 2 valori unici. Se la soglia è 2, il risultato è identico a quello del metodo find_constant_features. I nomi di queste colonne con pochi valori distinti vengono rimossi.
Dopo l’applicazione del filtro vengono modificati gli attributi della classe con la selezione effettuata.
- Parameters:
**kwargs – Argomenti keyword aggiuntivi per sovrascrivere i parametri dell’istanza per questa esecuzione.
Dati utilizzati per gli esempi:
>>> db_test_filters
feature_A feature_B feature_C 0 A 34.835708 Z 1 B 3.086785 X 2 A 42.384427 Y 3 B 86.151493 X 4 A -1.707669 V 5 B -1.706848 V 6 A 88.960641 X 7 B 48.371736 V 8 A -13.473719 Z 9 B 37.128002 Y 10 A -13.170885 X 11 B -13.286488 Z 12 A 22.098114 W 13 B -85.664012 W 14 A -76.245892 X 15 B -18.114376 X 16 A -40.641556 Z 17 B 25.712367 Y 18 A -35.401204 Y 19 B -60.615185 Y Esempio:
>>> from cefeste.selection import FeatureSelection >>> fs = FeatureSelection( ... db=df_test_filters, ... verbose=True # Utile per vedere cosa succede ... ) >>> fs.find_low_nvalues_features() >>> fs.make_report()
feat_name result drop_reason 0 feature_A drop low_values 1 feature_B keep NaN 2 feature_C keep NaN