FeatureSelection.find_constant_features¶
- FeatureSelection.find_constant_features(**kwargs)¶
Esegue solo il filtro per le feature costanti.
Questo metodo è un wrapper attorno al metodo run, configurato per attivare specificamente il filtro delle feature costanti e disabilitare tutti gli altri filtri. Aggiorna lo stato dell’istanza in base ai risultati di questo singolo filtro.
Questa funzione ha lo scopo di trovare le colonne che hanno un numero di valori distinti uguale a 1. Se una colonna ha un solo valore distinto, significa che è costante (ad esempio, una colonna dove ogni riga ha il valore True), e il nome di questa colonna viene incluso nella lista dei risultati, ovvero tutte le feature da escludere.
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 (anche se per le feature costanti non ci sono parametri specifici).
Dati utilizzati per gli esempi:
>>> db_test_filters
feature_A feature_B feature_C 0 5 34.835708 Z 1 5 3.086785 X 2 5 42.384427 Y 3 5 86.151493 X 4 5 -1.707669 V 5 5 -1.706848 V 6 5 88.960641 X 7 5 48.371736 V 8 5 -13.473719 Z 9 5 37.128002 Y 10 5 -13.170885 X 11 5 -13.286488 Z 12 5 22.098114 W 13 5 -85.664012 W 14 5 -76.245892 X 15 5 -18.114376 X 16 5 -40.641556 Z 17 5 25.712367 Y 18 5 -35.401204 Y 19 5 -60.615185 Y Esempio:
>>> from cefeste.selection import FeatureSelection >>> fs = FeatureSelection( ... db=df_test_filters, ... verbose=True # Utile per vedere cosa succede ... ) >>> fs.find_constant_features() >>> fs.make_report()
feat_name result drop_reason 0 feature_A drop constant 1 feature_B keep NaN 2 feature_C keep NaN