Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

dados_listings[['imovel_caracteristicas_condominio', 'Piscina']] retorna tudo falso

Olá a todos....

Estou usando o seguinte código

dados_listings['Piscina'] = dados_listings['imovel_caracteristicas_condominio'].apply(lambda x: 'Piscina' in  x)

dados_listings[['imovel_caracteristicas_condominio', 'Piscina']]

Mas não retorna True em nenhum dos resultados para piscina, o que pode ser?

===========================================================

Edit

===========================================================

Consegui resolver escrevendo ' Piscina'

dados_listings['Piscina'] = dados_listings['imovel_caracteristicas_condominio'].apply(lambda x: ' Piscina' in  x)

dados_listings[['imovel_caracteristicas_condominio', 'Piscina']]

Gostaria de saber um método em que não precisasse escrever os espaços, por favor

Att,

2 respostas
solução!

Oi Guilherme,

Para remover espaços do início e do final de uma string você pode utilizar a função strip. Para fazer isso em uma Series do pandas é bem simples. Segue um código de exemplo:


import pandas as pd

dados = {'Itens': [' Piscina', 'Sauna ', ' Garagem ', 'Segurança 24 Horas']}

df = pd.DataFrame(dados)
df

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Visualizando o conteúdo da Series no formato de uma lista notamos os espaços extras nas três primeiras palavras.


df.Itens.to_list()

[' Piscina', 'Sauna ', ' Garagem ', 'Segurança 24 Horas']

Para aplicar a função strip em cada linha de uma Series basta chamar o atributo str e logo depois a função que deseja aplicar nas strings.


df['Itens'] = df['Itens'].str.strip()
df.Itens.to_list()

['Piscina', 'Sauna', 'Garagem', 'Segurança 24 Horas']

Note que os espaços entre as palavras não são removidos.

Espero ter ajudado

Obrigado, Rodrigo Ajudou bastante!