如何解决python中的单词标记化
我是Python和文本分析的新手,我想标记我的文本语料库:
<s> c a b c b c </s>
<s> a c b a </s>
<s> c a c a c </s>
I wanted to tokenize them into ['<s>','c','a','b','</s>'],but what i got is:
['<','s','>','<','/s','>']
“ s”和“ / s”以分隔,作为不同的标记。有什么办法可以解决这个问题?
代码如下:
import nltk
#read file
f = open('Text Corpus.txt','r')
corpus = f.read()
print (corpus)
#tokenize
tokens = nltk.word_tokenize(corpus)
print(tokens)
解决方法
这看起来像标记。您可以使用BeautifulSoup
删除它。
import nltk
from bs4 import BeautifulSoup
corpus = """
<s> c a b c b c </s>
<s> a c b a </s>
<s> c a c a c </s>
"""
print(nltk.word_tokenize(BeautifulSoup(corpus,"html.parser").get_text()))
输出:
['c','a','b','c','c']
但是,如果要保留标签,只需执行以下操作:
with open("sample.txt") as f:
corpus = f.read().split()
print(corpus)
sample.txt
包含您提供的语料库示例。
输出:
['<s>','</s>','<s>','</s>']
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。