Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se
2
respostas

A pontuação continua, na minha segunda coluna de tratamento

from nltk import tokenize

frase = "olá, mundo!"
token_pontuacao = tokenize.WordPunctTokenizer()
token_frase = token_pontuacao.tokenize(frase)

print(token_frase)


from string import punctuation

pontuacao = list()
for ponto in punctuation:
    pontuacao.append(ponto)


pontuacao_stopwords = pontuacao + palavras_irrelevantes

frase_processada = list()
for line in data["tratamento_1"]:
    nova_frase = list()
    palavras_texto = token_pontuacao.tokenize(line)
    for word in palavras_texto:
        if palavra not in pontuacao_stopwords:
            nova_frase.append(word)
    frase_processada.append(' '.join(nova_frase))

data["tratamento_2"] = frase_processada

pontuacao persiste

2 respostas

Consegui corrigir o problema, o código certo está aqui

from string import punctuation

pontuacao = list()
for ponto in punctuation:
    pontuacao.append(ponto)
pontuacao_stopwords = pontuacao + palavras_irrelevantes

frase_processada = list()
for line in data["tratamento_1"]:
    nova_frase = list()
    palavras_texto = token_pontuacao.tokenize(line)
    for word in palavras_texto:
        if word not in pontuacao_stopwords:
            nova_frase.append(word)
    frase_processada.append(' '.join(nova_frase))

data["tratamento_2"] = frase_processada  

Olá Vítor.

Parabéns por identificar o erro sozinho, é sempre mais difícil enxergar esses pequenos detalhes quando estamos olhando para o nosso próprio código:

 for word in palavras_texto:
        if palavra not in pontuacao_stopwords:
            nova_frase.append(word)
    frase_processada.append(' '.join(nova_frase))

Nesse caso foi uma pequena confusão com as variáveis word e palavra, o azar aqui é que a variável palavra foi definida em algum outro ponto do código, porque se ela tivesse sido criada, o python nos ajudaria informando um erro.

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'palavra' is not defined  

Novamente parabéns por encontrar o problema sozinho, mas sempre que uma duvida surgir não hesite em pedir suporte aqui no fórum.

Bons Estudos

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software