Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Desafio

Projeto desafio 1: vendas online

vendas_clientes['Cliente'] = vendas_clientes['Cliente'].str.lower().str.replace(r"[^a-zA-ZÀ-ÿ\s]", "", regex=True)

Projeto desafio 2: administração de condomínios

locacao_imoveis['apartamento'] = locacao_imoveis['apartamento'].str.replace(' \\(blocoAP\\)', '', regex=True)
1 resposta
solução!

Olá, Victor! Como vai?

Muito bem! Continue resolvendo os desafios e compartilhando com a comunidade Alura.

No desafio 1, você desenvolveu um código que cumpre com a proposta de transformar os textos da coluna Cliente em letras minúsculas sem caracteres especiais e números, fazendo bom uso dos métodos lower() e replace(). Você também compreendeu bem o argumento regex=True para criar uma busca de texto avançada.

Uma outra maneira de fazê-lo seria dar um espaço ao invés de usar o \s para representar o caractere de espaço em branco, também seria interessante usar o método strip() para remover possíveis espaços em branco do início e do fim de uma string, por garantia. Ficando assim o código:

vendas_clientes['Cliente'] = vendas_clientes['Cliente'].str.lower().str.replace('[^a-zA-ZÀ-ÿ ]', '', regex=True).str.strip()

Resultado:

Cliente
0ana lucia
1diego armandiu
2diego armandiu
3diego armandiu
4isabely joanes
5isabely joanes
6isabely joanes
7isabely joanes
8isabely joanes
9joo gabriel
10julya meireles
11julya meireles
12julya meireles
13maria julia
14maria julia
15maria julia
16maria julia
17pedro pasco
18paulo castro
19thiago fritzz

No desafio 2, mais uma vez mostrou domínio do método replace() com o regex e explorou o uso das barras invertidas (\\) para captar corretamente os parênteses na expressão. Uma curiosidade, é que você poderia usar apenas uma barra invertida se aplicasse uma raw string (r''), assim:

locacao_imoveis['apartamento'] = locacao_imoveis['apartamento'].str.replace(r' \(blocoAP\)', '', regex=True)

Resultado:

apartamento
0A101
1A101
2A102
3A102
4B201
5B201
6B202
7B202
8C301
9C301
10C302
11C302
12D401
13D401
14D402
15D402
16E501
17E501
18E502
19E502
20F601
21F601
22F602
23F602
24G701
25G701
26G702
27G702
28H801
29H801

Em suma, a raw string não interpreta a barra invertida (\) como um caractere especial, implicando na leitura correta dos parênteses na expressão. Mais uma vez apontando para a máxima que, na programação, sempre existirão várias formas de se obter o mesmo resultado.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!