Usando filtros de texto para remover registros
Vale a pena fazer muitas perguntas aos seus clientes e dedicar tempo para entender suas variáveis. Você descobre que “assumable mortgage” é algo incomum no setor imobiliário, e seu cliente sugere excluí-los. Neste exercício, vamos usar isin(), que é parecido com like(), mas permite passar uma lista de valores para usar como filtro, em vez de apenas um.
Este exercício faz parte do curso
Feature Engineering com PySpark
Instruções do exercício
- Use
select()eshow()para inspecionar os valores distintos na coluna'ASSUMABLEMORTGAGE'e crie a listayes_valuescom todos os valores que contêm a string'Yes'. - Use
~df['ASSUMABLEMORTGAGE'],isin()e.isNull()para criar um filtro de NEGAÇÃO que remova os registros com os valores correspondentes na listayes_valuese mantenha os registros com valores nulos. Armazene esse filtro na variáveltext_filter. - Use
where()para aplicartext_filteradf. - Imprima o número de registros restantes em
df.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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(____.____())