tutorial texto spanish sentimientos mineria lemmatizer lematizacion español ejemplo con analisis python tokenize nltk

python - texto - Tokenización de palabras árabes utilizando NLTK



nltk python tutorial español (2)

Siempre recomiendo usar nltk.tokenize.wordpunct_tokenize . Puede probar muchos de los tokenizadores NLTK en here y ver por sí mismo.

Estoy usando word_tokenizer para dividir una oración en palabras.

Quiero tokenizar esta frase:

في_بيتنا كل شي لما تحتاجه يضيع ...ادور على شاحن فجأة يختفي ..لدرجة اني اسوي نفسي ادور شيء

El código que estoy escribiendo es:

import re import nltk lex = u" في_بيتنا كل شي لما تحتاجه يضيع ...ادور على شاحن فجأة يختفي ..لدرجة اني اسوي نفسي ادور شيء" wordsArray = nltk.word_tokenize(lex) print " ".join(wordsArray)

El problema es que la función word_tokenize no se divide por palabras. En su lugar, se divide por letras para que la salida sea:

"ف ي _ ب ي ت ن ا ك ل ش ي ل م ا ت ح ت ا ج ه ي ض ي ع ... ا د و ر ع ل ى ش ا ح ن ف ج أ ة ي خ ت ف ي .. ل د ر ج ة ا ن ي ا س و ي ن ف س ي ا د و ر ش ي ء"

Algunas ideas ?

Lo que he llegado hasta ahora:

Al probar el texto here , parece que se ha identificado mediante letras. También, sin embargo, otros tokenizadores lo tokenizaron correctamente. ¿ word_tokenize significa que word_tokenize es solo para inglés? ¿Eso va para la mayoría de las funciones de NLTK?


este es el resultado que obtengo con mi código, pero recuerdo que Unicode no funciona bien en Python 2 y usé 3.5

nltk.word_tokenize(''في_بيتنا كل شي لما تحتاجه يضيع ...ادور على شاحن فجأة يختفي ..لدرجة اني اسوي نفسي ادور شيء '')

[''في_بيتنا'', ''كل'', ''شي'', ''لما'', ''تحتاجه'', ''يضيع'', ''...'', ''ادور'', ''على'', ''شاحن'', ''يجتة'' , ''..لدرجة'', ''اني'', ''اسوي'', ''نفسي'', ''ادور'', ''شيء'']