之前给大家讲解过使用 R 语言进行文本数据分析的课程:
R 语言文本分析:https://rstata.duanshu.com/#/brief/course/bf37cf50eef04d38b43541cc52114c96
里面介绍了如何使用 R 语言进行文本分析,包括中文文本分词、词频统计、情感分析、共现分析、TF-IDF 分析、词云图和网络图的绘制、主题建模等内容。
尽管该课程是从 R 语言的安装开始讲解的,不过对于没有学习过 R 语言的小伙伴来说,学习这样的课程还是非常有难度的。因此我想是不是可以把这些操作在 Stata 中复现,这样大家就不必受“新学一门编程语言”的苦了。
Stata 文本分析的难点其实主要是难以进行中文文本分词,我试着用 C 语言编写了一些插件来解决,但是发现还是不太好用,难以跨系统使用。因此我最后采用的方案是在分词的时候调用一小段 R 代码,这些“模板代码”几乎不需要修改,即使不会 R 语言的小伙伴也能轻松使用。然后大部分文本分析操作还是使用 Stata 完成。这样就实现了在 Stata 中进行中文文本分词的功能。
另外一个技术难点是 Stata 难以绘制精美的词云图和网络图,我通过封装 highcharts.js 图表库编写了一些绘图命令解决了这个问题。
至于词频统计、TF-IDF 指标、主题建模之类的方法使用 Stata 原生代码即可实现。
本系列课程预计下周一,也就是 7 月 22 日开讲,和之前的模式一样,差不多每周一次课,包含如下课时:
第一周:Stata 的安装、Sublime text 的配置及初识 Stata 文本分析
- Stata 的安装和 Sublime text 编辑器的配置;
- R 语言的安装和配置、rcall 命令的使用;
- 通过一个案例来初步认识 Stata 进行文本分析的基本方法。
第二周:Stata 的预备知识
- 介绍 Stata 中的基础概念和基础代码;
- 通过案例演示 Stata 中数据处理的基本方法。
第三周:Stata 中的字符串处理与正则表达式
- 介绍字符串的基础;
- 介绍字符串的一些操作函数;
- 正则表达式的使用;
- 中文正则表达式的使用;
- 文本数据的读取约定
第四周:使用 Stata 爬取上市公司的年报数据
- 如何进行网页分析;
- 如何处理 json 格式的数据;
- 如何进行网络数据爬取。
第五周:使用 Stata 进行词频统计、中文文本分词
- 如何把 pdf 文件批量转换成 txt 文件;
- 如何批量读取 txt 文件;
- 如何对中文文本进行分词。
第六周:Stata 中的词频统计、逆文档指数与 TF-IDF 分析
- 词频统计;
- 计算 tf、idf 以及 tf-idf 指标。
第七周:Stata 中的文本情感分析与情感词云图绘制
- 情感词典的使用;
- 比较不同情感词典的结果;
- 使用 Stata 绘制精美的词云图
![]()
![]()
![]()
第八周:词语间的相关性:n-grams 词干提取、相关性分析及词汇共现网络图的绘制
- 双词组分析;
- 双词组 tf-idf 指标的计算;
- 相关性分析;
- 词汇共现网络的绘制
![]()
第九周:使用 Stata 调用百度大脑自然语言处理接口进行文本情感倾向分析
- 百度大脑自然语言接口的介绍;
- 在 Stata 中调用文本情感倾向分析接口获取情感得分。
第十周:Stata 中的文档主题建模
- Stata 中文档主题建模的方法;
- 调用 R 语言实现文档主题建模。
第十一周:案例:使用 Stata 语言处理港股年报计算数字赋能指数(繁体文本的文本分析)
第十二周:案例:使用 Stata 从文本中提取地址
第十三周:案例:使用 Stata 对扫描文档进行 OCR 并提取表格数据
第十四周:案例:使用 Stata 调用百度文心千帆大模型进行文本分析与文本主要内容提取
第十五周:使用 Stata 提取一大堆文本文件中的词频并绘图展示:分词之外的方法
第 11~15 次课实际上是之前讲解过的一些案例,也准备收入这个系列课程中。
点击这里跳转到 RStata 短书平台获取附件:名师讲堂|Stata 中文文本分析
评论