查看原文
其他

重磅!Stata 16 正式发布:Stata 在大数据时代的华丽转身

陈强 计量经济学及Stata应用 2022-09-19


2019626日,Stata 公司正式宣布 Stata 16上线啦!或许计量小伙伴们还没把 Stata 15捂热,而 Stata 16已经悄然袭来。大数据时代,知识加速迭代,Stata 公司加快了步伐,我们也要跟上啊……


全新的 Stata 16 给我们带来了怎样的惊喜呢?


总结起来,Stata 16 主要有以下两方面的重大升级。首先,Stata 在大数据时代的华丽转身,与大数据相关的功能突飞猛进。其次,Stata 继续深耕计量经济学的经典与前沿方法。让我们一起来看看吧。

 

Stata 16 在大数据时代的华丽转身

 

众所周知,大数据(big data)的特点可用 4V 来概括,即数据规模庞大(Volume)、数据更新频繁(Velocity)、数据类型多样(Variety)和数据价值巨大(Value)。Stata 16的以下新模块与功能更新均与此 4V有关。

 

Lasso

 

作为大数据Volume的一种重要形式,“高维数据”(high-dimensional data)在经管与社科中也越来越多地出现,即解释变量很多,甚至超过样本容量的情形。Lasso (Least Absolute Shrinkage and Selection Operator,也称“套索估计量”)及其衍生的系列估计量正是进行高维回归的主要工具。


为此,Stata 16及时地推出了Lasso系列的官方命令,包括lasso, elasticnet(弹性网)与 sqrtlasso(平方根Lasso),可估计线性回归模型(比如 lasso linear)、二值选择模型(比如,lasso logit lasso probit)、计数模型(比如,lasso poisson)等。

 

Lasso 系列的估计量通常使用惩罚回归(penalized regressions)来处理高维数据,以避免“过拟合”(overfit)与“方差爆炸”(variance explosion),并进行“变量选择”(variable selection)。这些惩罚回归对于回归系数过大的惩罚力度则一般由调节参数(tuning parameter或 L1范数(L1 norm)来控制。


使用 Stata 16Lasso命令,可以很方便地计算回归系数的整个路径(coefficient paths),作为调节参数  或 L1范数的函数;并根据“交叉验证”(cross-validation)选择最优的调节参数  ,参见下图。 

 

 


不仅如此,Stata 16 官方命令还提供了 Lasso 系列相应的统计推断方法,比如计算标准误、置信区间,或进行假设检验。这些统计推断方法包括“double-selection lasso”(比如,dsregressdslogitdspoisson),“partialling-out lasso”(比如,poregresspologitpopoisson),以及“cross-fit partialing out lasso”(比如,xporegressxpologitxpopoisson)。

 

Multiple Datasets in Memory

 

在大数据时代,学界与业界越来越需要在内存中同时处理多个数据集。在此前的 Stata 版本中,Stata 内存只能有一个数据集。这种设置虽简便易行,在小数据时代也基本够用,但在大数据时代,由于数据的来源 Variety 多样,已成为应用的瓶颈。

 

因此,Stata 16 适时地推出在内存内同时调用多达100个数据集的重要功能。比如,你可以很方便地根据内存中多个数据集的信息来定义一个新的变量。哇!

  


Python Integration

 

随着机器学习与数据科学的兴起,Python 无疑是最炙手可热的编程语言之一。为此,Stata 16 专门提供了一个与 Python 的接口,让用户可以在熟悉的 Stata 界面下调用 Python,并在 Stata 中显示运行结果。

 

比如,此前的 Stata 版本无法画三维立体图,而在Stata 16中,通过调用Python 的 Matplotlib 则不难实现(参见下图)。 

这也意味着,你可以在 Stata 中,通过 Python 接口,使用 Python 所擅长的各种机器学习方法,包括随机森林、梯度提升、支持向量机、神经网络等!


Do-file Editor -- Autocompletion and More Syntax Highlighting

 

在大数据时代,编程越来越成为一种基本技能,而不再是“码农”专属。在 Stata 中编程,无疑需要一个很好的 do 文件编辑器(Do-file Editor)。


让人惊喜的是,Stata 16 的 do 文件编辑器的性能也有了大幅提升,包括 Stata 命令的自动填写完成(autocompletion),以及更多语法高亮显示(syntax highlighting),这无疑将为 Stata 编程提供很大便利。

 

 

Meta-Analysis

 

随着大数据时代的数据来源 Variety 越来越多,使得我们时常需要将不同来源的样本数据之研究结果整合在一起,即所谓“元分析”(Meta-Analysis)。为此,Stata 16 提供了全新的 Meta-Analysis 模块,使得元分析变得十分方便、快捷而高效,并辅之以强大的可视化功能(参见下图)。

  


Reporting

 

由于大数据的更新频繁特点(Velocity),使得数据分析经常需要重复进行,使用更新的数据。此时,研究报告的可重复性(Reproducibility)就变得日益重要,即保证任何人只要运行你的 Stata 程序即可得到完全一样的研究报告。这些研究报告的格式可以是 WordPDFExcel 或 HTML(参见下图)

 

而且,当你的数据集更新之后,再运行一遍你的 Stata,则你的研究报告也会相应地自动更新!Stata 16 新引入或完善的相关命令包括 dyndocmarkdownputdocxhtml2docxdoc2pdf

 

小贴士:还在发愁如何将 Word 文件转化为 PDF 格式?Stata 16 的 doc2pdf 命令就能帮你搞定啦!

 

 

Import Data from SAS and SPSS

 

如果你有数据在 SAS 或 SPSS 中,想要导入 Stata 以利用其强大的统计与计量功能,Stata 16 贴心地提供了专门的新命令 import sas 与 import spss,使得这种数据迁移变得十分方便与快捷,参见下图。

  

 

 

Stata 16 深耕计量经济学的经典与前沿方法

 

Nonparametric Series Regression

 

序列回归(series regression)是非参数回归(nonparametric regression)的一种重要方法。它使用多项式(polynomials)、B-样条(B-splines)或样条(splines)所构成的序列来近似逼近任意的未知回归函数。


Stata 16 全新推出的命令 npregress series 填补了 Stata 在非参数回归领域的又一空白,使得非参数序列回归变得方便而高效;比如,计算平均边际效应(average marginal effects)。命令 npregress series 甚至可以估计“半参数模型”(semi-parametric model),即同时包含参数与非参数部分的模型。

 

Choice Models

 

对于微观计量中常用的“离散选择模型”(discrete choice models),Stata 16 专门设立了一个“选择模型”(Choice Models)的模块。在估计选择模型之前,你先通过命令 cmset 来宣布你的数据为选择模型,然后可用命令 cmsummarizecmchoicesetcmtab 或 cmsample 来考察你的选择模型。

 

估计选择模型的相应 Stata 命令也统一带上了 cm 的前缀,比如

 

cmclogitconditional logit model

cmmixlogitmixed logit model

cmxtmixlogitpanel-data mixed logitmodel

cmmprobitmultinomial probitmodel

cmroprobitrank-ordered probitmodel

cmrologitrank-ordered logitmodel

 

其中,cmxtmixlogit 是 Stata 16的全新命令,用于估计面板数据的混合逻辑模型(mixed logit models for panel data)。

 

Panel-data ERMs

 

Stata 15 推出了 ERMExtended Regression Models)模块,可以处理同时出现“内生性”(endogeneity)、“样本选择”(sample selection)与“处理效应”(treatment)这三种并发症的情形,或三者的任意组合,非常灵活实用。Stata 16 则将ERMs 推广到了面板数据中,新引入了xtegressxteintregxteprobitxteoprobit 等强大命令。

 

New in Bayesian Analysis

Stata 16 的“贝叶斯分析”(Bayesian Analysis)模块也有了不少新功能。比如,可使用多个马尔科夫链(multiple chains)来检验现代贝叶斯分析所依赖的马尔科夫链蒙特卡洛(Markov China Monte Carlo)是否收敛;以及使用后验分布(posterior distribution)进行“贝叶斯预测”(Bayesian predictions),参见下图。


 

Nonlinear DSGE Models

 

继 Stata 15 推出估计线性 DSGE 模型的命令 dsge 之后,Stata 16 更上一层楼,可以通过命令 dsgenl 来估计非线性 DSGE 模型。


使用命令dsgenl,无须再手工将 DSGE 模型线性化,直接输入非线性的 DSGE 模型,Stata 即会自动地对它进行线性化与估计。这无疑是宏观经济学者的福音啊!

 

xtheckman

 

Stata 16新推出的命令 xtheckman,使得 Heckman 的样本选择模型(sample model)也可以在面板数据中估计啦!

 

总之,Stata 16 是一次很令人激动的重大升级。Stata 16 的及时推出,意味着 Stata 在大数据时代的华丽转身,而同时又继续深耕计量经济学的经典与前沿方法。在可预见的将来,Stata 依然会是经济学家最常用的计量与统计软件。


关于 Stata 16 的更多详细内容,请点击页底“阅读原文”。

 

备注:本公众号不提供 Stata 16。如需正版 Stata 16,请咨询 Stata 软件官方授权经销商及合作伙伴:北京友万信息科技有限公司(www.uone-tech.cn),希望能为 Stata 中国用户提供更多服务与支持,联系人:徐老师,Tel/Wechat:18610597626。

  

参考文献


陈强,《计量经济学及Stata应用》,高等教育出版社,2015年(配套教学视频,可在网易云课堂学习,详见https://study.163.com/course/introduction/1006076251.htm)


陈强,《高级计量经济学及Stata应用》,第2版,高等教育出版社,2014年(配套高级计量六天现场班,北京,2019年10月1-6日,详见https://bbs.pinggu.org/thread-3156565-1-1.html)


陈强,《机器学习及R应用》,高等教育出版社,2020年(即将出版)




震撼来袭  >>  机器学习及Stata、R三天现场班


上海,2019年8月17日-19日

主办:第三届Stata中国用户大会、友万科技

主讲:陈强教授 (山东大学)

授课方式:思想原理 + 数学精髓 + Stata、R案例


陈强老师将首次推出全新的“机器学习及Stata、R应用”三天现场培训班。结合Stata与R的实操案例,深入浅出地介绍最为流行的机器学习方法,包括KNN,判别分析、朴素贝叶斯、决策树、随机森林、提升法、支持向量机、神经网络等。


跟着陈老师,三天入门机器学习,赶上时代步伐!


更多详情,请识别下图中二维码:







(c) 2019, 陈强,山东大学经济学院

www.econometrics-stata.com

转载请注明作者与出处

Our mission is to make econometrics easy, and facilitate convincing empirical works. 

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存