Python_sklearn_CountVectorizer使用详解
创始人
2025-05-29 03:22:07
0

CountVectorizer

  • 简介
  • 数据预处理
  • 构建模型
    • 训练模型
    • 所有词汇:model.get_feature_names()
    • 计数矩阵:X.toarray()
    • 词汇索引:model.vocabulary_

简介

CountVectorizer官方文档。

将一个文档集合向量化为为一个计数矩阵。

如果不提供一个先验字典,不使用分析器做某种特征选择,那么特征的数量将等于通过分析数据发现的词汇量。

数据预处理

两种方法:1.可以不分词直接投入模型;2.可以先将中文文本进行分词。

两种方法产生的词汇会非常不同。在后面会具体给出示范。

import jieba
import re
from sklearn.feature_extraction.text import CountVectorizer
#原始数据
text = ['很少在公众场合手机外放','大部分人都还是很认真去学习的','他们会用行动来','无论你现在有多颓废,振作起来','只需要一点点地改变','你的外在和内在都能焕然一新']
#提取中文
text = [' '.join(re.findall('[\u4e00-\u9fa5]+',tt,re.S)) for tt in text]
#分词
text = [' '.join(jieba.lcut(tt)) for tt in text]
text

pic1

构建模型

训练模型

#构建模型
vectorizer = CountVectorizer()
#训练模型
X = vectorizer.fit_transform(text)

所有词汇:model.get_feature_names()

#所有文档汇集后生成的词汇
feature_names = vectorizer.get_feature_names()
print(feature_names)
  1. 不分词生成的词汇
    pic2
  2. 分词后生成的词汇
    pic3

计数矩阵:X.toarray()

#每个文档相对词汇量出现次数形成的矩阵
matrix = X.toarray()
print(matrix)

pic4

#计数矩阵转化为DataFrame
df = pd.DataFrame(matrix, columns=feature_names)
df

pic5

词汇索引:model.vocabulary_

print(vectorizer.vocabulary_)

pic6

相关内容

热门资讯

【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
牛客计算器的改良(Python... 文章目录1.题目描述2.输入描述:3.输出描述:4.示例15.分析6.代码7.结语 链接࿱...
【前端】‘??‘与‘||‘有什... 0 问题 经常写const data = res.data.a ?? ''或者const d...
正大杯|市调大赛|2023备赛... 关键信息 同时随着精细化养宠趋势的深入,宠物消费类目日渐丰富。 本报告通过 Niuco...
文本生成视频Make-A-Vi... Meta公司(原Facebook)在今年9月29日首次推出一款人工智能系...