Tengo una lista de aproximadamente 300 palabras y una gran cantidad de texto que quiero escanear para saber cuántas veces aparece cada palabra.Python: ¿la mejor/manera eficiente de encontrar una lista de palabras en un texto?
Estoy utilizando el módulo de re de pitón:
for word in list_word:
search = re.compile(r"""(\s|,)(%s).?(\s|,|\.|\))""" % word)
occurrences = search.subn("", text)[1]
pero yo quiero saber si hay una manera más eficiente o más elegante de hacer esto?
puede usar un wordbound en lugar de buscar espacios circundantes y signos de puntuación. '\ bWORD \ b' – mpen
Si desea ir más allá de la frecuencia de las palabras y buscar en la clasificación de texto, puede consultar esto: http://streamhacker.com/2010/06/16/text-classification-sentiment- analysis-eliminar-baja-información-características/ – monkut
¿Cuán ** enorme puede ser el texto si lo tiene en la memoria? – FMc