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_Afeature_Bfeature_C
0NaN25.131773X
1NaN-27.713793X
2NaN6.793083Z
3NaN26.438121Y
4NaN26.067861X
5NaN31.096038Z
6NaN90.685563X
7NaN32.676715W
8NaN-2.207832Y
9NaN58.204358X
10NaN69.473524Z
11NaN-51.380391Y
12NaN39.870003V
13NaN45.058637Z
14NaN-4.878175Y
159.078.785341W
16NaN2.497221Y
17NaN16.278823V
18NaN1.346409Y
19NaN10.778952Z

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