主要可以参考下面几个链接:

1.sklearn文本特征提取

2.使用scikit-learn tfidf计算词语权重

3.sklearn官方中文文档

4.sklearn.feature_extraction.text.CountVectorizer

补充一下:CounterVectorizer()类的函数transfome()的用法

它主要是把新的文本转化为特征矩阵,只不过,这些特征是已经确定过的。而这个特征序列是前面的fit_transfome()输入的语料库确定的特征。见例子:

 >>>from sklearn.feature_extraction.text import CountVectorizer
>>>vec=CountVectrizer()
>>>vec.transform(['Something completely new.']).toarray()

错误返回 ,sklearn.exceptions.NotFittedError: CountVectorizer - Vocabulary wasn't fitted.表示没有对应的词汇表,这个文本无法转换。其实就是没有建立vocabulary表,没法对文本按照矩阵索引来统计词的个位数

corpus = [
'This is the first document.',
'This is the second second document.',
'And the third one.',
'Is this the first document?']
X = vec.fit_transform(corpus)
X.toarray()

 vocabulary列表

>>>vec.get_feature_names()
['and', 'document', 'first', 'is', 'one', 'second', 'the', 'third', 'this']

 得到的稀疏矩阵是

array([[0, 1, 1, 1, 0, 0, 1, 0, 1],
[0, 1, 0, 1, 0, 2, 1, 0, 1],
[1, 0, 0, 0, 1, 0, 1, 1, 0],
[0, 1, 1, 1, 0, 0, 1, 0, 1]], dtype=int64)

建立vocabulary后可以用transform()来对新文本进行矩阵化了

>>>vec.transform(['this is']).toarray()
array([[0, 0, 0, 1, 0, 0, 0, 0, 1]], dtype=int64)
>>>vec.transform(['too bad']).toarray()
array([[0, 0, 0, 0, 0, 0, 0, 0, 0]], dtype=int64)

简单分析'this is'在vocabulary表里面,则对应词统计数量,形成矩阵。而'too bad'在vocabulary表中没有这两词,所以矩阵都为0.

最新文章

  1. JavaScript 解析 Django Python 生成的 datetime 数据 时区问题解决
  2. Struts.xml中Action的method与路径的三种匹配方法
  3. OPenCL
  4. java操作数据库出错
  5. android通话时第二通电话呼叫等待提示音音量大小
  6. Mac OS X 配置 Apache+Mysql+PHP 详细教程
  7. Sublime Text 3103 Crack 破解 注册码
  8. 导出Unity场景为配置文件
  9. [代码示例]用Fine Uploader+ASP.NET MVC实现ajax文件上传
  10. 极化码的matlab仿真(1)——参数设置
  11. Celery 源码解析五: 远程控制管理
  12. jdbc的入门学习
  13. [MapReduce_8] MapReduce 中的自定义分区实现
  14. 《高性能SQL调优精要与案例解析》——10.4_SQL语句改写部分文档
  15. Java日期时间使用总结[转载]
  16. xp_readerrorlog与sp_readerrorlog
  17. 命令行翻译 推荐一个linux系统中可用的终端小程序
  18. 源码安装mysql 5.7.19数据库
  19. js根据选中的复选框,隐藏那一行
  20. linux -- 终端执行可执行文件

热门文章

  1. LINUX漏洞-安全防护--防火墙相关
  2. PHP依赖注入(DI)和控制反转(IoC)详解
  3. Spring-boot+Mybatis+Maven+MySql搭建实例
  4. 字符串(string) 的基本操作
  5. UI5-文档-4.18-Icons
  6. struts2,servlet和springmvc的单例多例问题
  7. salt常用模块及API
  8. Linux下基于官方源代码RPM包构建自定义MySQL RPM包
  9. Apache相关安全设置
  10. springboot 使用的配置