FeatureSelection.find_missing_features¶
- FeatureSelection.find_missing_features(**kwargs)¶
Esegue solo il filtro per le feature con troppi valori mancanti.
Questo metodo è un wrapper attorno al metodo run, configurato per attivare specificamente il filtro delle feature con valori mancanti e disabilitare tutti gli altri filtri. Aggiorna lo stato dell’istanza in base ai risultati di questo singolo filtro.
Questa funzione individua le colonne che hanno una percentuale di valori mancanti (o “missing”, come NaN o None) superiore a una soglia definita (max_pct_missing, default 0,9). Se, ad esempio, più del 90% dei valori in una colonna sono mancanti e la soglia è 0.9 (cioè 90%), il nome di quella colonna verrà rimosso.
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 NaN 25.131773 X 1 NaN -27.713793 X 2 NaN 6.793083 Z 3 NaN 26.438121 Y 4 NaN 26.067861 X 5 NaN 31.096038 Z 6 NaN 90.685563 X 7 NaN 32.676715 W 8 NaN -2.207832 Y 9 NaN 58.204358 X 10 NaN 69.473524 Z 11 NaN -51.380391 Y 12 NaN 39.870003 V 13 NaN 45.058637 Z 14 NaN -4.878175 Y 15 9.0 78.785341 W 16 NaN 2.497221 Y 17 NaN 16.278823 V 18 NaN 1.346409 Y 19 NaN 10.778952 Z Esempio:
>>> from cefeste.selection import FeatureSelection >>> fs = FeatureSelection( ... db=df_test_filters, ... verbose=True # Utile per vedere cosa succede ... ) >>> fs.find_missing_features() >>> fs.make_report()
feat_name result drop_reason 0 feature_A drop missing 1 feature_B keep NaN 2 feature_C keep NaN