我正在加载一个文本文件,其中包含南非荷兰语维基百科的纯文本版本作为nltk语料库,使用以下代码:
import nltk
from nltk.corpus import PlaintextCorpusReader
from nltk.corpus.util import LazyCorpusLoader
from __future__ import division
afwikipedia = LazyCorpusLoader('afwikipedia', PlaintextCorpusReader, r'(?!\.).*\.txt')
af = nltk.Text(afwikipedia.words())
然后,我用下面的句子看最上面的单词:
^{pr2}$不幸的是,这种方法有几个问题“n”是南非荷兰语中非常流行的一个词,在英语中的意思与“a”相同。上面的方法将它分成两部分“'”和“n”。另外,所有扩展的ASCII字符似乎都被视为unicode而不是ASCII,因此“verpleër”变成了“verple\xc3r”。在
有人知道我该怎么解决这个问题吗?尤其是对ascii字符的unicode处理真的很烦人。在
我还做了以下工作:
# Create a file called sitecustomize.py in c:\python24\Lib\site-packages.
import sys
sys.setdefaultencoding('iso-8859-1') # ASCII latin.
这不是unicode,而是混合了8位字符的ascii。
PlaintextCorpusReader
接受一个encoding
参数,可以用它来解决问题。在至于将}分开,这是标记器的问题。找到一个令你满意的标记器,并告诉你的语料库读者使用它。在
'
与{相关问题 更多 >
编程相关推荐