在Python

时间:2016-10-26 06:25:56

标签: python

我正在使用spaCy来标记行列表中的命名实体。我目前的代码是:

from spacy.en import English
parser = English()

for item in datalist:
    #parse the item (sentence)
    parsed = parser(unicode(item))
# tag the lines
    ents = list(parsed.ents)
# write to outfile      
    for entity in ents:
        outfile.write(str(itemnumber) + '\t' + ' '.join(t.orth_ for t in entity) + '\n')

spaCy的工作正常,但不知何故,在某些情况下,在outfile中添加了一个额外的空行,如下所示:

...
165 it
165 it
165 it greater andre
166 6 12 14 

166 solidarity paristoferguson
167 77
167 shooting deaths
167 cops
167 circumstances
...

当换行前的东西是数字时,有时会添加这些空白行,但并非总是如此。

我尝试将标记行写入字符串,然后执行re.sub('\ n \ n','\ n',字符串),但问题仍然存在。

编辑:添加.strip()到解析器解决了它:

parsed = parser(unicode(item))

0 个答案:

没有答案