Stata 新命令 readWind:快速读入并转换万德数据

作者:朱红兵 (南京大学)

Stata 连享会: 知乎 | | 码云

  • Stata连享会 精彩推文1 || 精彩推文2
    Stata 新命令 readWind:快速读入并转换万德数据_第1张图片

前言:WIND 数据库是大家在科研路上常用的数据下载利器,但遗憾的是从 WIND 上下载的 EXCEL 数据文件通常是横向排列的 (即 Stata 用户熟悉的 wide 格式),需要我们手工整理或采用 reshape 等命令进行转换后才能满足 Stata 的分析要求。出于这一需求,我们编写了一个新命令:readWind,用以将宽型 (wide) 的上市公司财务数据高效地转换为长型 (long) 的面板数据。

1. 下载安装 readWind 命令

第一步:在 Stata 中安装 github 命令

在 Stata 的 command 框口中输入如下命令自动下载外部命令 github。该命令用于搜索、安装 Github 上发布的 Stata 外部命令 (若已经安装 github 命令,可以忽略此步):

net install github, from("https://haghish.github.io/github/")

第二步:使用 github 命令安装 Github 上的命令

在 Stata 的 command 框中输入下面的代码,耐心等待安装完成:

 github install zhbsis/TwoSort

上述命名安装完成中你会发现你的 c 盘 ado 文件夹中的 a 文件夹里面多了readWind这个 ado 命令,这就是将 Wind 数据终端中下载的 excel 数据转换为能够直接进行实证分析的 long 型数据格式的命令啦!!!

第三步:readWind对 Wind 下载的 EXCEL 格式有什么要求呢?

只要你的 EXCEL 数据排版格式满足下面的要求,都是可以通过readWind读入到 Stata 中的:

股票代码 股票名称 时间1 时间2 ... 时间n
000016 深康佳A 1.051 .... .... .....
000017 深中华A 0.951 .... .... .....
...... ....... ..... .... .... .....

第四步:如何调用执行readWind命令呢?

调用readWind只需在 Stata 的 command 命令框输入下述命令行即可:

readWind, var(EXCEL名称) timeType(时间类型) t0(样本起始时间) [split splitN(样本分割数) erase]

其中,

  • EXCEL 名称就是从 Wind 下载下来的 EXCEL 名称,建议用英文命名,而且最好以变量名命名,比如你下载了ROE的数据,那这个 EXCEL 的文件名就命令为 ROE
  • 时间类型是指下载下来的样本是年度,季度还是月度数据,所以它的取值是 y/q/m ,暂时不支持日度
  • 样本起始时间,比如你选择从 1995 年 1 月开始下载,那么这个 t0 里面就写 1995m1,如果是 1995 年第 1 季度开始,那就写 1995q1,如果是年度数据以年为变化单位那就写 1995 ;
  • split splitN(n) erase这 3 个关键词是可选择的命令,当样本中的数据量太大时数据格式转换的速度相对较慢,所以我们采用了个折中的方法将样本分割成 n 个小样本,依次进行处理最后合并在一起。 n 取值越大分割的样本越小。建议 n 的取值是原始数据列数的 1/10 到 1/20 之间;
  • 另外需要注意的是,本命令是基于gather命令进行的转置,所以需要先安装tidy中的gather命令,即ssc install tidy

2. readWind 的使用案例

举个栗子:我从 Wind 上下载了 A 股上市企业 ROE 的数据(ROE.xlsx),格式如下:

Stata 新命令 readWind:快速读入并转换万德数据_第2张图片
ROE.png

那么只需要在 Stata 中输入下述命令:

cd "ROE所在的文件夹"             /// 改变工作路径到ROE文件夹下
readWind, var(ROE) timeType(q) t0(1995q1)      /// 调用readWind命令

或者输入:

readWind, var(ROE) timeType(q) t0(1995q1) split splitN(10) erase

等命令运行完就可以在 Stata 中看到漂亮规范的数据格式啦:

Stata 新命令 readWind:快速读入并转换万德数据_第3张图片
ROE.png

关于我们

  • Stata 连享会(公众号:StataChina)】由中山大学连玉君老师团队创办,旨在定期与大家分享 Stata 应用的各种经验和技巧。
  • 公众号推文同步发布于 CSDN-Stata连享会 、-Stata连享会 和 知乎-连玉君Stata专栏。可以在上述网站中搜索关键词StataStata连享会后关注我们。
  • 点击推文底部【阅读原文】可以查看推文中的链接并下载相关资料。
  • Stata连享会 精彩推文1 || 精彩推文2

联系我们

  • 欢迎赐稿: 欢迎将您的文章或笔记投稿至Stata连享会(公众号: StataChina),我们会保留您的署名;录用稿件达五篇以上,即可免费获得 Stata 现场培训 (初级或高级选其一) 资格。
  • 意见和资料: 欢迎您的宝贵意见,您也可以来信索取推文中提及的程序和数据。
  • 招募英才: 欢迎加入我们的团队,一起学习 Stata。合作编辑或撰写稿件五篇以上,即可免费获得 Stata 现场培训 (初级或高级选其一) 资格。
  • 联系邮件: [email protected]

往期精彩推文

  • Stata连享会推文列表1
  • Stata连享会推文列表2
  • Stata连享会 精彩推文1 || 精彩推文2
Stata 新命令 readWind:快速读入并转换万德数据_第4张图片

Stata 新命令 readWind:快速读入并转换万德数据_第5张图片
欢迎加入Stata连享会(公众号: StataChina)

你可能感兴趣的:(Stata 新命令 readWind:快速读入并转换万德数据)