1
resposta

desafio:faça o processo de tokenização para a coluna descricao_vizinhanca presente no conjunto de dados dados_hospedagem.json.

O processo de Tokenização é a base do Processamento de Linguagem Natural (NLP). Ao transformar um texto longo em uma lista,realize análises estatísticas, como contar quais bairros ou características da vizinhança são mais citados nos anúncios.

tokenização da coluna descricao_vizinhanca, seguiremos o fluxo de tratamento de texto que você já utilizou nas outras colunas: converter para minúsculas, remover caracteres especiais via Regex e gerar em string em uma lista de palavras (tokens).

passo a passo:

implementação:


import pandas as pd

# 1. Carregando os dados (caso ainda não estejam carregados)
df_hospedagem = pd.read_json('dados_hospedagem.json')
df_hospedagem = pd.json_normalize(df_hospedagem['info_moveis'])

# 2. Transformando para minúsculas
# Isso garante que 'Bairro' e 'bairro' sejam tratados como a mesma palavra
df_hospedagem['descricao_vizinhanca'] = df_hospedagem['descricao_vizinhanca'].str.lower()

# 3. Limpeza com Regex
# Removemos pontuação e caracteres que não são letras ou números
# O padrão [^a-zA-Z0-9\s] busca tudo que NÃO é letra, número ou espaço
df_hospedagem['descricao_vizinhanca'] = df_hospedagem['descricao_vizinhanca'].str.replace('[^a-zA-Z0-9\s]', '', regex=True)

# 4. Tokenização
# Transforma a string limpa em uma lista de palavras
df_hospedagem['descricao_vizinhanca'] = df_hospedagem['descricao_vizinhanca'].str.split()

# Visualizando o resultado
print(df_hospedagem['descricao_vizinhanca'].head())
1 resposta

Olá, Moacir! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o processo de tokenização para transformar textos em listas de palavras com Python, utilizou muito bem a expressão regular (Regex) para limpar caracteres especiais e ainda compreendeu a importância da normalização em minúsculas para padronizar os dados antes da análise.

Uma dica interessante para o futuro é aplicar o nltk.word_tokenize() quando quiser uma tokenização mais robusta, que considera pontuação e regras linguísticas. Assim:

import nltk
nltk.download('punkt')

df_hospedagem['descricao_vizinhanca'] = df_hospedagem['descricao_vizinhanca'].apply(nltk.word_tokenize)

Isso faz com que a tokenização seja mais precisa, especialmente em textos longos e complexos.

Conteúdos relacionados

Alguns materiais podem estar 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!