Python - Text Munging

Munging em geral significa limpar qualquer coisa que esteja bagunçada transformando-a. Em nosso caso, veremos como podemos transformar o texto para obter algum resultado que nos forneça algumas mudanças desejáveis ​​nos dados. Em um nível simples, trata-se apenas de transformar o texto com o qual estamos lidando.

Exemplo

No exemplo abaixo, planejamos embaralhar e reorganizar todas as letras de uma frase, exceto a primeira e a última, para obter as possíveis palavras alternativas que podem ser geradas como uma palavra com grafia incorreta durante a escrita por um humano. Este rearranjo nos ajuda a

import random
import re
def replace(t):
    inner_word = list(t.group(2))
    random.shuffle(inner_word)
    return t.group(1) + "".join(inner_word) + t.group(3)
text = "Hello, You should reach the finish line."
print re.sub(r"(\w)(\w+)(\w)", replace, text)
print re.sub(r"(\w)(\w+)(\w)", replace, text)

Quando executamos o programa acima, obtemos a seguinte saída -

Hlleo, You slouhd raech the fsiinh lnie.
Hlleo, You suolhd raceh the fniish line.

Aqui você pode ver como as palavras estão confusas, exceto a primeira e a última letras. Usando uma abordagem estatística para a grafia incorreta, podemos decidir quais são as palavras com grafia incorreta comum e fornecer a grafia correta para elas.