1
resposta

Funções lambda

No caso da função criada para definir uma coluna como True ou False no caso de existir ou não piscina no condomínio, sabemos que o python é case sensitive e, assim caso tenham escrito a palavra diferente da palavra de pesquisa Piscina ocorrerá um erro:

Condição utilizada no exemplo:

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

Meu teste retornou tudo falso

dados_listings['imovel_caracteristicas_condominio'].apply(lambda x: 'PISCINA' in x)
0     False
47    False
1     False
16    False
2     False
      ...  
60    False
63    False
64    False
66    False
68    False
Name: imovel_caracteristicas_condominio, Length: 70, dtype: bool

Como seria a sintaxe para incluir um upper no teste da função lambda???

1 resposta

Olá Otavio! Tudo bem contigo?

Peço desculpas pela demora em dar um retorno.

Nesse caso, você poderia utilizar o método de manipulação de string capitalize() para que sua função consiga identificar quando existe o elemento "Piscina". Por exemplo:

dados_listings['Piscina'] = dados_listings['imovel_caracteristicas_condominio'].apply(lambda x: 'PISCINA'.capitalize() in  x)
dados_listings[['imovel_caracteristicas_condominio', 'Piscina']].head()

O capitalize é um método que converte apenas a primeira letra de uma string para maiúscula e todas as outras para minúsculas. Então, no caso da função lambda acima, ele vai transformar a palavra "PISCINA" em "Piscina" e vai identificar onde existe essa palavra na coluna "imovel_caracteristicas_condominio" do dataset.

Existem alguns outros métodos de manipulação de string que podem ser úteis dependendo de como as strings estão sendo apresentadas no seu dataset. Vou deixar o link aqui para você explorar um pouco mais caso se interesse:

Espero que isso ajude. Qualquer dúvida estou à disposição :)

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!