Raz*_*anP 6 python nlp token nltk spacy
如何取消标记此代码的输出?
班级核心:
def __init__(self, user_input):
pos = pop(user_input)
subject = ""
for token in pos:
if token.dep == nsubj:
subject = untokenize.untokenize(token)
subject = S(subject)
Run Code Online (Sandbox Code Playgroud)
我试过:https : //pypi.org/project/untokenize/
摩西去令牌器
。加入()
但是我的最后一个代码有这个错误(来自这篇文章):
TypeError: 'spacy.tokens.token.Token' object is not iterable
Run Code Online (Sandbox Code Playgroud)
.join() 的这个错误:
AttributeError: 'spacy.tokens.token.Token' object has no attribute 'join'
Run Code Online (Sandbox Code Playgroud)
对于 MosesDetokenizer: text = u" {} ".format(" ".join(tokens)) TypeError: can only join an iterable
spacy 中的所有标记都保留其上下文,因此可以重新创建所有文本而不会丢失任何数据。
在您的情况下,您所要做的就是:
''.join([token.text_with_ws for token in doc])
Run Code Online (Sandbox Code Playgroud)
由于该属性text_with_ws具有标记及其相应的空白字符(如果存在)。