利用TF-idf对数据进行处理
这也是一个小例子。
document = ["I have a pen.",
"I have an apple."]
tf = TfidfVectorizer(ngram_range=(1,2),analyzer='char') # 按照字符来做特征,最大范围是两个字符,最小是一个字符
discuss_tf = tf.fit_transform(document)
words = tf.get_feature_names()
print(words)
print(discuss_tf)
N-gram 特征提取
自己来实现了一个N-gram提取方法,代码如下:
def getNgram(sen,n):
leng = len(sen)
res = []
for i in range(leng-n+1):
resOne = []
for j in range(n):
resOne.append(sen[i+j])
res.append(resOne)
return res
sen = ["我","喜欢","中国","杭州"]
res = getNgram(sen,3)
print(res)
其中sen是切词后的列表,可以用jieba分析工具