当前位置:   article > 正文

大数据分析 | 用 Python 做文本词频分析_python 词频分析

python 词频分析

老师教给我,要学骆驼,沉得住气的动物。看它从不着急,慢慢地走,慢慢地嚼,总会走到的,总会吃饱的。

———《城南旧事

54adb699c22545f18d065f4be5fe1d21.png


目录

一、前言

Python 简介

Python 特点

二、基本环境配置

三、分析

Part1介绍

Part2词频分析对象——《“十四五”规划》

Part3文本预处理

Part4中文分词——全都是“干货”

1添加自定义词库(特色词库)

2进行分词

3去除停用词

4按需处理其他词语

Part5生成词频统计表

1统计词频

2将词频统计结果保存为表格

Part6全部代码

Part7总结

获取源码?私信?关注?点赞?收藏?

 


一、前言

 

Python 简介

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。

  • Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。

  • Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。

  • Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。

  • Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。

Python 特点

  • 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。

  • 2.易于阅读:Python代码定义的更清晰。

  • 3.易于维护:Python的成功在于它的源代码是相当容易维护的。

  • 4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。

  • 5.互动模式:互动模式的支持,您可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。

  • 6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。

  • 7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。

  • 8.数据库:Python提供所有主要的商业数据库的接口。

  • 9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。

  • 10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

 


二、基本环境配置


版本:Python3

系统:Windows

相关库:requests,lxml,numpy,Counter,pandas,re,jieba

开发工具:Pycharm

在这里我使用的是 anaconda ,众所周知这是一个大软件,但是它的环境是比较全面的,在之前的学习中,我们用的是这个软件。

anconda,可以理解成运输车,每当下载anconda的时候,里面不仅包含了python,还有180多个库(武器)一同被打包下载下来

下载完anconda之后,再也不用一个个下载那些库了。

 


 

三、分析

Part1介绍

文本分析一直都是数据分析的重要组成,研究方向众多,包括但不限于词频分析、情感分析、文本分类、文本可视化等。其中一些方向研究难度不小,存在一定的技术门槛,但在中文文本分析中,大多数的研究方向都和词语息息相关,所以文本词频分析往往是文本分析的“第一步”。

 

在技术资源和数据资源丰饶的现代,人人都可以自建炉灶,进行自己的文本研究。一些读者可能在技术操作上存在困难,故而本文就来为大家在词频分析方面提供一些微小的帮助。

 

本文中所有 Python 代码均在集成开发环境 PyCharm 中以及使用交互式开发环境 Jupyter Notebook 编写和运行,使用到的 Python 库有 re(用于文本预处理)、jieba(用于中文分词)、collections(用于词频统计)、pandas (用于词频统计表的制作和保存)。

 


 

Part2词频分析对象——《“十四五”规划》

我们以国家指导文件《中华人民共和国国民经济和社会发展第十四个五年规划和2035年远景目标纲要》(下文简称为《“十四五”规划》)中的文本内容作为此次词频分析的文本对象。

首先将文本保存为文本文件(txt 文件),正文部分如下图所示。

2cf6783b497e4735a16c2ac0fbb24a7b.png

 


 

Part3文本预处理

首先使用 Python 读取文本,代码如下:

  1. with open('十四五规划.txt''r', encoding='utf-8'as f:
  2.     # encoding 参数需要根据文本文件实际的编码来设置
  3.     Text = f.read()  # 读取全部内容
  4. f.close()            # 关闭文件,必要的操作
  5. # 输出正文的前 200 个字符
  6. Text[2024:2224]

Python 读取文本文件时,会加载所有文本,包括空格和换行符。在文章正文的书写中,我们难以避免地使用换行来让文字连续。这有利于阅读,但使用 Python 读取文档时会读到很多换行符以及其他的空白字符,这严重影响了文本中词语的连续性,所以将换行符和空白符全部去除是一个不错的解决方案,操作代码如下:

  1. import re
  2. # 使用正则表达式去除文本中所有的换行符和空白符
  3. Text = re.sub('\s+''', Text) 

下图是去除换行符后正文(不含目录)的一部分:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/109750
推荐阅读
相关标签