原理和前一个的侮辱词汇分类差不多,都是通过测试求出概率,概率大的为分类。(我概率论真的不好,好难理解。。。)
import numpy as np
import random
import re
"""创建词汇表"""
def createVocabList(dataSet):
vocabSet = set([])
for document in dataSet: # 取出每一行文档(每行七个单词)
vocabSet = vocabSet | set(document) # 先将文档转换为set集合,无需不重复,再取并集
return list(vocabSet)
"""判断输入集中单词是否在词汇表中"""
def setOfWordsVec(vocabList, inputSet):
returnVec = [0] * len(vocabList) # 创建一个元素都为0的向量
for word in inputSet: # 取输入集的每一个单词
if word in vocabList: # 如果单词在词汇表中
returnVec[vocabList.index(word)] = 1 # 标志位置为一,表示所检测单词在词汇表中
else:
print("the word:$s is not in my Vocabulary!" % word)
return returnVec
"""计算概率"""
def