基于Gensim的Python的文本分析方法:TFIDF LDA

  • 1、简介
  • 2、中文文本预处理
  • 3、Gensim文本挖掘
    • 3.1 TFIDF文本分析
    • 3.2 LDA文本分析
  • 4、总结

1、简介

文本数据的挖掘在当今互发达的联网环境下显得越来越具有价值,数据分析师Seth Grimes曾指出“80%的商业信息来自非结构化数据。本文以中文文本数据作为分析对象,针对中文文本存在的特征进行文本预处理,并调用Gensim工具包实现对文本的TFIDF建模已经LDA建模,从文本中抽取出的特征进行表征文本信息,可用于后续文本相似度、个性化推荐等研究。

2、中文文本预处理

首先,观察如下一条用户在网上所发表的评论:

不难发现,该用户发表的内容中不仅包含文字,还包括标点符号、emoji表情符号以及url网页链接,是一条十分具有代表性的现在文本数。诸如此类的文本数据,在进行文本挖掘之前,需要进行数据清洗,去除上述干扰信息从而避免影响文本分析的准确性。此外,文本分析的基本单位是词,需要对句子进行分词处理,去除没有实际意义的停用词。
本文通过Pyhon进行文本数据预处理,利用了中文停用词表去除停用词,调用了jieba分词,(注:中文停用词版本较多,可自行下载,这里提供一个版本: 停用词,提取码: h8xn),处理代码如下:

# coding=utf-8
import jieba, re# 去除原始字符串中的url
def remove_urls(raw_sentence):# 正则表达式url_reg = r'[a-z]*[:.]+\S+'result = re.sub(url_reg, '', raw_sentence)return result# 去除原始字符串中的emoji字符
def remove_emoji(raw_sentence):try:co = re.compile(u'[\U00010000-\U0010ffff]')except re.error:co = re.compile(u'[\uD800-\uDBFF][\uDC00-\uDFFF]')return co.sub('', raw_sentence)return result# 创建停用词表
def stopwordslist():stopwords = [line.strip() for line in open('data/stopWords.txt', encoding='UTF-8').readlines()]return stopwords# 利用jieba分词对文档进行中文分词
def seg_depart(raw_sentence):sentence_depart = jieba.cut(raw_sentence.strip())stopwords = stopwordslist()outstr = ''for word in sentence_depart:if word not in stopwords:outstr += wordoutstr += " "return outstr
#测试
sentence = "大众、奥迪现在几乎全部的最新电子科技都用在奥迪身上了,A4L的配置新科技应用很明显…												

Python Gensim文本分析——从文本预处理到TFIDF、LDA建模分析相关推荐

  1. python人物关系可视化百年孤独_百年孤独LDA主题分析

    本文针对百年孤独小说评论的主题分析 词云图 代码: install.packages("jiebaRD") install.packages("jiebaR") ...

  2. [CSO]安全威胁建模分析中7个可能犯的错误

    [CSO]安全威胁建模分析中7个可能犯的错误 相对缺乏成熟度的威胁建模分析可能给那些依赖此举确保其网络和服务安全的机构带来大麻烦. [By Jaikumar Vijayanfrom:www.csoon ...

  3. wordcloud里面设置mask加载不出来词频_一条龙搞定情感分析:文本预处理、加载词向量、搭建RNN

    IMDB Sentiment Classification from scratch Author: Beyond Time: 2019.04.26 情感分析是上手NLP的最简单的任务之一,它就是一个 ...

  4. python 英语分词_基于Python NLTK库进行英文文本预处理

    文本预处理是要文本处理成计算机能识别的格式,是文本分类.文本可视化.文本分析等研究的重要步骤.具体流程包括文本分词.去除停用词.词干抽取(词形还原).文本向量表征.特征选择等步骤,以消除脏数据对挖掘分 ...

  5. Gensim:一款进行文本主题识别的 Python 工具库

    从大量文本中自动提取人们谈论的主题(主题识别)是自然语言处理的基本应用之一.大型文本示例包括社交媒体订阅.消费者对酒店.电影和其他业务的评价.用户评论.新闻和客户发来的邮件. 在本中,将使用LDA 从 ...

  6. python清洗文本数据_02.数据预处理之清洗文本信息

    准备30万条新闻数据 编号 新闻类别 新闻数量(条) 1 财经 37098 2 教育 41963 3 科技 65534 4 时政 63086 5 体育 65534 6 娱乐 65534 yield生成 ...

  7. 基于Python实现的论坛帖子文本情感分析完整代码+数据 可直接运行 毕业设计

    完整代码:https://download.csdn.net/download/qq_38735017/87425721 一.课程项目 文本分类分析 二.项目类容 爬取川大匿名社区SCUinfo在一段 ...

  8. python 文本相似度_【机器学习】使用gensim 的 doc2vec 实现文本相似度检测

    环境 Python3, gensim,jieba,numpy ,pandas 原理:文章转成向量,然后在计算两个向量的余弦值. Gensim gensim是一个python的自然语言处理库,能够将文档 ...

  9. python实现对小说的文本分析(人物关系图,人物词云等)

    文本分析 0.效果图 这里有些"二人"."不会"等词语没用筛选掉,手动筛选即可. 1.整体思路: 调用的库:jieba,matplotlib,networkx, ...

最新文章

  1. HTTP头信息中的参数Etag
  2. 【转载】Real6410 Linux 常见问题总结(截至2010/07/26)
  3. flyway配置mysql_SpringBoot 中的Flyway配置
  4. 程序员面试题精选100题(56)-C/C++/C#面试题(4)
  5. 干货,springboot自定义注解实现分布式锁详解
  6. AI公开课:18.05.16 周明博士(MSRA副院长)—北大AI第十一讲之《语言智能的进展》课堂笔记——你了解语言智能
  7. 实战部署MySQL用户认证的Postfix邮件系统(3)
  8. exe一机一码加密工具_文件夹加密软件有哪些作用?
  9. Switchover and Failover说明
  10. 物联网其实只是一个话题
  11. 音频源代码_使用开放源代码从丢失的格式中恢复音频
  12. 如何查看一个组件的 classid是多少_如何快速查看胎压?胎压多少才正常?带您全面了解爱车的轮胎...
  13. 吴恩达机器学习学习笔记第七章:逻辑回归
  14. 实现数组头尾两端元素对调代码
  15. 【初学大数据】CentOS7安装hadoop3.3.2完全分布式详细流程
  16. 怪物之心无法触发_《异度之刃2》稀有异刃力男怪物之心支线任务攻略
  17. Drillbeach---第一章 Drillbench 5.1发行说明
  18. 【CSDN|每日一练】小艺的英文名
  19. 器:Linux - 断点续传文件
  20. linux 系统重启过程,linux 系统启动流程

热门文章

  1. 删除oracle数据库的三种方法,oracle数据库的删除方法详解
  2. pillow库,PIL库
  3. 所有电脑管家都叫你清理的注册表,能偷偷控制你的电脑。
  4. Linux 服务(服务概述、查看服务、服务管理)
  5. 有哪些应该坚持的好习惯?
  6. CE认证的流程有哪些?
  7. WPS的三生三世,雷军的十里桃花
  8. Android蓝牙连接CC2541,TI官网放出的CC2541蓝牙4.0的android4.3程序
  9. 下载素材资源的网站有 哪些?
  10. Leaflet中使用draw绘制时获取图形的几何信息