Folosirea filtrelor de text pentru eliminarea înregistrărilor
Merită să adresezi clienților cât mai multe întrebări și să aloci timp pentru a înțelege bine variabilele. Afli că ipoteca preluabilă (assumable mortgage) este o situație rară în industria imobiliară, iar clientul îți sugerează să excluzi aceste cazuri. În acest exercițiu, vei folosi isin(), care este similar cu like(), dar îți permite să transmiți o listă de valori ca filtru, în loc de o singură valoare.
Acest exercițiu face parte din cursul
Feature Engineering cu PySpark
Instrucțiuni pentru exercițiu
- Folosește
select()șishow()pentru a inspecta valorile distincte din coloana'ASSUMABLEMORTGAGE'și creează listayes_valuescu toate valorile care conțin șirul'Yes'. - Folosește
~df['ASSUMABLEMORTGAGE'],isin()și.isNull()pentru a crea un filtru de tip NOT care să elimine înregistrările cu valorile corespunzătoare din listayes_valuesși să păstreze înregistrările cu valori nule. Stochează acest filtru în variabilatext_filter. - Folosește
where()pentru a aplicatext_filterasupra luidf. - Afișează numărul de înregistrări rămase în
df.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# Inspect unique values in the column 'ASSUMABLEMORTGAGE'
df.____([____]).distinct().____()
# List of possible values containing 'yes'
yes_values = [____, ____]
# Filter the text values out of df but keep null values
text_filter = ~df['ASSUMABLEMORTGAGE'].isin(____) | df['ASSUMABLEMORTGAGE'].isNull()
df = df.____(text_filter)
# Print count of remaining records
print(____.____())