Stata15.0 增加了这么多新的功能! 各功能介绍

字数 6807阅读 3907

原文发表在我的个人微信公众号上,欢迎关注:

注:关注公众号,后台回复“stata15” 即可获得软件包 以及 序列号

2017年6月Stata 15正式发布。这是Stata有史以来最大的一次版本更新。

这里列出Stata15.0新增加的16项最重要的新功能并且本文对部分新功能进行简介:

Stata15.0 新增加的主要功能如下: �

1. 扩展回归模型

2. �潜在类别分析(LCA)

�3. 贝叶斯前缀指令

�4. 线性动态随机一般均衡(DSGE)模型

�5. web 的动态Markdown文档

6. �非线性混合效应模型

7.�空间自回归模型(SAR)

8.区间删失参数生存时间模型

9.�有限混合模型(FMMs)

10.�混合Logit模型

11.�非参数回归

12.�聚类随机设计和回归模型的功率分析

13.�Word和PDF文档

14.�图形颜色透明度/不透明度

15.�ICD-10-CM/PCS支持

16.�联邦储备经济数据(FRED)支持

17.  �其他

1.扩展回归模型

我们称之为ERMS 扩展回归模型。四个新的命令适合

.线性回归分析,

.区间回归包括 tobit模型,

.概率,

.有序概率模型

可任意组合成:

.内生变量

.非随机处理任务

.内源性(Heckman-style)样本的选择

这些新的命令让人惊喜,因为可以在任何一个方程中加入内生变量,包括处理赋值和概率选择方程。内生变量并不局限于连续性。它们可以是二进制或序数。不管是外生的还是内生的,它们都可以与其他变量相互作用。它们甚至可以互相作用,形成平方项或立方项!

这些新的ERM命令—eregress, eintreg, eprobit, 和eoprobit注定会流行起来,因为他们解决了研究人员的很多问题。首先, 可能有一个内生变量, 因为许多模型都省略了与模型中的变量相关的变量。其次,数据经常被删剪,而删剪不是随机的。ERM 样本选择选项允许您对选择过程进行建模, 并对其进行调整。或者, 如果您正在使用非随机处理效应模型, 则可以用 ERM处理分配选项。或者, 可以结合处理分配和选择选项, 其中一些是由于后续的行为而损失的拟合内生处理分配模型。

语法非常简单:

eregress y x1 x2

eregress y x1 x2,endogenous(x2=x3 x4, nomain)

eregress y x1 x2,endogenous(x2=x3 x4, nomain)select(selected=x2 x5)eregress y x1 x2,endogenous(x2=x3 x4, nomain)  entreat(treated=x2 x5)

Eregress适合线性回归。可以很容易地把概率模型拟合成线性回归模型。如果结果变量y是二进制的,则键入:

eprobit y x1 y2, endogenous(x2=x3 x4, nomain)  select(selected=x2 x5)                                            entreat(treated=x2 x5)

如果结果变量y是连续的,但变量x2是二进制的,则键入

eregress y x1 y2, endogenous(x2=x3 x4, binary,nomain)                                                     select(selected=x2 x6) entreat(treated=x2 x3 x4)

如果y和x2都是二进制的,则键入:

eregress y x1 y2, endogenous(x2=x3 x5, binary,nomain)                                                     select(selected=x2 x6) entreat(treated=x2 x3 x4)

如果想知道奇怪的nomain选项的详细情况。当指定endogenous(name=…)时,变量name会自动添加到主方程中。可以键入:

eregress y x1 , endogenous(x2= x3 x4)

或者

eregress y x1 , endogenous(x2= x3 x4,nomain)

无论哪种方式,相同的模型都是可以的。在前面的例子中指定了nomain,所以我不需要解释包括主方程X2的这个选项。

2.潜在类别分析(LCA)

潜在的均值未被观测。分类也就是分组。潜在类是数据中未观测到的组。你可能有关于消费者的数据,并且根据消费者对产品的潜在兴趣将他们分成三组。但是,在数据中没有指定每个消费者所属组的变量。如果有四个二进制变量,它们是消费者所属的潜在类的指示信号,可以键入:

gsem (y1 y2 y3  y4 <- cons),lclass(consum 3) logit

y1, y2, y3,和 y4 被观测。Consum是潜在的分类变量,lclass(Consum 3)指定为3这个值。其结果是拟合一个模型, 其中 y1、y2、y3 和 y4 是由未观测的类确定。四y变量中一个和三类中的一类,命令适合4×3 = 12 逻辑回归分析。每个回归都有一个截距。此外,多项逻辑回归也可以用来预测Consum。

拟合模型后,你可以

.使用新的estat lcprob命令估计属于每一类的消费者比例;

.使用新的estat lcprob命令估计每个类中Y1、Y2、Y3、Y4的边际均值(均值就是示例所示的概率);

.使用新estat lcprob命令来评价适合度;

.使用现有的predict 命令获取分类成员的预测概率和观测结果变量的预测值。

3.贝叶斯前缀指令

新的bayes:前缀命令使你能够适应比以前版本更广泛的贝叶斯模型。原来也可以拟合贝叶斯线性回归, 但是现在可以通过输入文字就可以:

bayes:regress y1 x1 x2

这非常方便。以前不能做拟合贝叶斯生存的模型。现在可以:

bayes:regress y1 x1 x2, distribution(weibull)

甚至可以拟合贝叶斯多级生存模型:

bayes:streg  x1 x2 || id: distribution(weibull)

在这个模型中, 为变量 id的每个值添加随机截距。

新的bayes:前缀命令在许多Stata评估命令之前工作,并提供超过50种可能性的模型。支持的模型包括多级、面板数据、生存和样本选择模型!

新命令支持所有Stata的贝叶斯的功能。你可以从之前的模型参数的分布中选择,也可以使用之前默认的。当闭合形式解决方案用于Gibbs方法时,可以使用默认的自适应 Metropolis–Hastings 抽样, 或Gibbs抽样, 或两种方法的组合。在bayesmh命令的基础上可以使用STATA的任何其他功能。可以更改回归系数的缺省先验分布,比如,使用prior()选项:

bayes, prior({y x1 x2}, normal(0,4): regress y1 x1 x2)

评估后,可以使用Stata标准贝叶斯postestimation工具,比如

. bayesgraph检查收敛性

. bayesstats summary估计模型参数的功能

. bayesstats ic和bayestest model计算贝叶斯因子并比较贝叶斯模型

. bayestest interval进行区间假设检验

4.线性动态随机一般均衡(DSGE)模型

DSGEs 是经济学中的一个时间序列模型。它们是传统预测模型的替代品。两者都试图解释总的经济现象, 但 DSGEs 允许对来自经济理论模型的基础上做这个。建立在经济理论基础上的方程很多。这些方程的关键特征是, 未来变量的期望值会影响今天的变量。这是区别 DSGEs 与矢量回归或状态空间模型的一个特性。另一个特点是,从理论推导出来的参数通常可以用这个理论来解释。

这里是如何在Stata中拟合一个双方程DSGE 模型。大括号, {}, 用于把参数括起来:

dsge (p= {beta}*E(F,P)+{kappa}*y)

(f.y={rho}*y,state)

p是一个控制变量, 而 y 是状态空间术语中的状态变量。f.是正向运算符。

第一个方程式:

(p={beta}*E(f.p)+{kappa}*y)

表示控制变量 p 取决于未来的{beta}*p 加上现在的{kappa}*y。

第二个方程式:

(f.y={rho}*y,state)

表示y的预期未来值是现在的 {rho}*y。stata选项指定y是一个状态变量。

在DSGE模型中有三种变量:

.控制变量和方程,如p没有冲击,并且是由方程组决定的。

.状态变量 (如 y) 具有隐含的冲击, 在时间段开始时是预先确定的。

.冲击是驱动系统的随机错误。

在任何情况下, 以上dsge 命令可以定义一个模型并拟合。

如果我们有一个关于 beta 和kappa之间关系的理论,比如它们是相等的, 我们可以用现有的命令test来测试它。

新的 postestimation命令estat policy 和estat transition报告策略和转换矩阵。如果键入

estat policy

显示将控制变量作为状态变量的线性函数。如果有五个控制变量和三个状态变量, 则每个控件将被报告为三个状态的线性函数。在上面的简单例子中, 预测 p 的线性函数将显示为现在的 y 函数。

同时,

estat transition

报告转换矩阵。而策略矩阵将 p 报告为函数y, 而转换矩阵则报告y 如何通过时间演变为p。可以使用Stata的现有预测命令来生成预测。可以使用Stata现有的irf命令来绘制脉冲响应函数。

这是一个脉冲响应图:

5.  web动态的Markdown文档

你有没有听过Markdown?它是一种创建 html 文档的流行方式。html 文件是繁琐的。Markdown简单直观,想法很简单。可以创建一个文件, 其中包含所需的可读格式的文本, 然后通过它运行一个命令来创建一个HTML文件。

Stata现在支持Markdown, 我们已经添加了标签 (功能) 到Markdown, 允许包括输入文件中的Stata命令。你所包含的命令将被运行和显示, 或者以秘密方式运行, 以及提取输出的部分供文档使用。

您可以创建一个文件,例如

在Stata中,你可以输入

dyndoc example.txt

现在, 有了一个名为 example.html的新文件.

dyndoc代表动态文档。创建的Markdown文件是动态的, 如果数据发生变化, 你可以通过简单的输入重新创建网页。

6.非线性混合效应模型

非线性混合效应模型也被称为非线性多级模型和非线性层次模型。可以用两种方式来考虑这些模型。可以把它们看成包含随机效应的非线性模型。或者可以把它们看成线性混合效应模型, 其中一些或所有的固定和随机效应都是非线性的。不管哪种方式, 总的误差分布假设成Gaussian分布。

这些模型在人口药代动力学, 生物鉴定和研究生物学和农业成长过程中很流行。比如,采用非线性混合效应模型对机体的药物吸收、地震强度和植物生长进行了模拟。

新的评估命令被命名为 menl。它实现了 popular-in-practiceLindstrom–Bates 算法, 是基于对固定和随机效应的非线性均值函数进行线性化。支持最大似然和受限最大似然估计方法。Menl易于使用。可以直接输入单个方程。大括号{ },用于将要匹配的参数括起来:

估值是 b1, b2, 和 b3。 U[plant]是每个plant的随机截距。

menl可以拟合多级或多层次的规范,其中参数将每个层级定义为模型参数和随机效应函数。

这个和上一个模型是一样的,此外,b2和b3允许在不同的plant间变化。几个方差-协方差结构可用于在同一个层级上对随机效应的相依性进行建模。如果你想建模的话,可以把上面例子中的相依性设在U1,U2和U3之间。虽然没有明确说明,在这个模型中存在一个组内错误。方差协方差结构灵活应用于异方差和组内相关性的建模。异方差可以建模为一个协变量或预测平均值的幂函数,相依性可以使用任意阶的自回归模型进行建模。

除了标准功能外, postestimation特征还包括对随机效应及其标准误差的预测,对模型中定义的感兴趣参数的预测, 作为其他模型参数和随机效应的参数、聚类相关矩阵的整体评估等。

7.空间自回归模型(SAR)

Stata适合空间自回归 (SAR) 模型, 也称为同步自回归模型。新的spregress, spivregress, 和spxtregress命令允许因变量的空间滞后、自变量的空间滞后和空间自回归误差。空间滞后是时间序列滞后的空间模拟。时间序列滞后近年来成为变量值。空间滞后是附近地区的值。

该模型适用于区域数据, 也称为区域性数据。观测结果被称为空间单位, 可以是国家、州、区、县、市、邮政编码或城市街区,或者它们可能根本就不是地理位置。它们可能是社交网络的节点。空间模型评估直接影响—区域对自身的影响,并估算邻近地区的间接或溢出效应。

有一个全新的 [SP] 手册专门介绍Stata的新SAR功能。这些命令被称为 Sp 命令。它们可以与以下一起工作:

. shapefiles通过 web 获取你选择数据,或者

.�没有shapefiles 和数据,只包含位置的坐标,或者

.�没有 shapefiles没有位置会出现社会网络数据。

下面是它如何与shapefiles一起工作的。访问了美国人口普查局网站并下载tl_2016_us_county 文件。你现在键入:

unzipfile tl_2016_us_county.zip

spshape2dta tl_2016_us_county

use tl_2016_us_county

genetate long fips=real(STATEFP+COUNTYFP)

spset fips,modify replace

下一步,将新创建的tl_2016_us.county.dta文件与你的分析文件合并:

use analysis,clear

merge 1:1 fips using tl_2016_us_county,keep(match)

save newdata

您已经准备好定义空间加权矩阵和拟合空间滞后模型。

spmatrix create contiguity W

spmatrix create idistance M

spregress unemployment college,gs2sls dvarlag(W) ivarlag(W: college)                                                         errorlage(M)

只拟合 (1) college (2)的依赖变量的空间滞后和(3) college空间滞后的unemployment模型。该模型也有自回归误差。空间滞后变量采用W计算,空间滞后误差采用m计算。

8.区间删失参数生存时间模型

Stata新的stintreg 命令加入 streg, 用于拟合参数生存模型。 stintreg 拟合区间删失数据模型。在区间删失数据中,故障时间并不确定。众所周知, 受试者还没有失败的时候, 以及后来他们已经失败的时候。

stintreg 拟合指数,Weibull, Gompertz, 对数正态分布、对数逻辑和广义的gamma 生存时间模型。支持比例风险和加速故障时间度量。功能包括

.分层估计

.灵活的辅助参数建模

. robust, cluster–robust, bootstrap,和jackknife的标准误差

通过 svy 前缀支持调查数据评估。

除了基本功能,postestimation功能还包括plots of survivor,, hazard, 和 cumulative hazard函数;平均数和中位数时间预测; Cox–Snelland martingale-like残差值等。

9.   有限混合模型(FMMs)

新的fmm:当数据来自未观测到的亚群时, 前缀命令拟合模型。它可以与17 个Stata评估命令一起使用。

大多数用户使用fmm来拟合模型中的参数 (系数、位置、方差、比例等) 在不同亚群之间的变化。在这些模型中,未观测到的亚群称为类。比如说你感兴趣的拟合模型。

regress y x1 x2

但你认为有三类模型的参数可能会有所不同。尽管没有记录类成员身份的变量, 但可以将

fmm 3:regress y x1 x2

报告将是三个线性回归—每个类为一个—与预测类成员的模型一起。

fmm:当类可能遵循不同模型时, 也可以同时使用多个评估命令, 如

fmm: (regress y1 x2) (poisson y x1 x2 x3)

在这两个类的例子中, 报告将是第一类线性回归模型, Poisson回归是第二类, 以及预测类成员模型。

每个分类在总人口的比例中,Postestimation 命令可用于 (1) 评估,(2) 报告类内结果变量的边际均值,(3) 预测类成员的概率和预测结果。

10.混合Logit模型

Stata已经拟合多项Logit模型。Stata15能使它们拟合混合形式, 包括随机系数。

随机系数对拟合多项式逻辑模型具有特殊的意义。它们是围绕Independence of the Irrelevant Alternatives (IIA)假设一种方式。这一假设表明, 如果你选择步行去工作, 当你的选择是步行, 乘坐公交车, 或自驾, 你仍然选择步行, 即使你没有选择不可再用的一个选项。如果选项是在步行或开车之间,你仍然会选择步行。人类有时行为不同。

IIA假设在协变量的条件下,选择是独立的。如果违反这种假设, 选择将是相关的。随机系数允许选择相关性。研究人员经常在随机效用模型和离散选择分析的中使用混合模型。Stata新的asmixlogit Logit命令支持各种随机系数分布, 并允许包含特定案例变量的模型。

11.   非参数回归

Stata现在适合非参数回归。在这些模型中, 不指定函数形式。指定变量并指定想要匹配的变量:

y=g(x1,x2,x3,... xk)+error_item

匹配项是g()。该方法不假定 g () 是线性的;它也可以

y=beta1*x1+beta2*x2^2+beta3*x1*x2+error_item

该方法甚至不假定 g () 在参数中是线性的。它也可以

y=beta1*x1^beta2+beta3*x1*x2+error_item

适合 x1、x2 和 x3 的 y 模型, 请键入

npregress kernel y x1 x2 x3

报告是y偏导数的平均值, x1, x2 和x3 和标准错误。平均值是根据数据计算的。在拟合模型后, 可以使用predict获得预测的数值。

平均导数类似于系数,或者至少模型是线性的, 而它不是。要知道非线性模型中的平均导数并不是平均导数。你可能想知道在变量的平均值中x1, x2, 和 x3的y 的导数。可以使用 margins获取:

margins,dydx(x1 x2 x3) atmeans

或者, 您希望在特定的兴趣点上评估预测值,

margins,at(x1=2 x2=3 x3=1) at(x1=2 x2=3 x3=2)

绘制这个函数的一部分。

另外, margins不仅可以计算, 它还能产生引导标准错误。

12.   聚类随机设计和回归模型的功耗分析

Stata现有的power命令执行功率和样本(PSS) 分析。其功能包括PSS线性回归和集群随机设计 (CRDs)。现在可以添加你自己的功率和样本大小的方法。

线性回归的新方法包括

. power oneslope,在一个简单的线性回归中对斜率测试执行pss。根据给定的其他研究参数计算样本的大小或功率

. power rsquared,在多元线性回归中执行 R-squared 检验的PSS。 R-squared 检验是对测定系数 (R-squared) 的 f 检验。测试可以用来测试所有系数的意义, 也可以用来测试其中的一个子集。在这两种情况下, powerrsquared 计算样本大小或功率或目标R-squared给其他参数研究。

.  power pcorr,在多元线性回归中执行PSS的部分相关测试。部分相关检验是平方偏多相关系数 f的 检验。该命令根据其他研究参数计算样本大小或功率或目标平方偏相关系数。

Stata 15现在还支持集群随机化设计:

在CRD中, 组的受试者 (集群) 是随机的而不是个体, 这意味着样本大小的作用是通过数字集群和集群大小来发挥的。样本大小确定包括给定集群大小的数量或给定集群的大小。CRD命令计算 (1) 的一个集群的数目,(2)的集群大小, 或 (3)的功率, 或最小的可检测到的效果大小给定的其他参数。这些命令可以根据不相等的集群大小调整选项。

.当指定新的选项集群时,现有的5个 power方法将扩展到支持CRDs。

.对于两个样本方法, 还可以针对两个组中的不相等的集群进行调整。

与所有其他功率方法一样, 新方法允许指定参数的多个参数值, 并自动生成表格和图形结果。

另一个新功能是可以添加自己的PSS方法。这是很容易做到的。编写一个计算样本大小、功率或效果大小的程序。power命令将为您完成其余部分。它将处理选项中多个值的支持, 并且自动生成图形和结果表。

13.   Word和PDF文档

现在, 使用Stata嵌入的结果生成 Word和 PDF档就像制作 Excel 工作表一样容易。大多数使用者喜欢Stata 14中的putexcel,如果你也是他们中的一员,你会爱上新的  putpdf和putdocx命令。他们像putexce一样工作。可以编写do-file来创建包含最新结果、表格和图表的整个Word 或 PDF报表。可自动执行可重复的报告。

新的 putdocx命令将段落、图像和表格写入 word 文档 (. docx 文件)。图像包括Stata图形和组织的标志。也可以设置文本对象的格式。包括字体大小、粗体、倾斜、自定义表等。

14.   图形颜色透明度/不透明度

到现在为止, 在另一个上面画一个物体, 上面的物体盖住下面的物体。在计算机图形学的行话中, Stata颜色完全不透明, 或者, 如果你喜欢不完全透明。Stata15允许控制其颜色的不透明度。不透明度指定为一个百分比。默认情况下, Stata的颜色是100% 不透明的。

每当指定一个颜色时都可以指定不透明度,例如在mcolor ()选项中控制标记的颜色。你可以指定green%50,而不是green。你可以指定"0 255 0%50".而不是"0 255 0%50"(相当于绿色)。可以自行指定%50, 使默认颜色50%不透明。

但是, 不要指定%0。这是完全透明的, 也是无形的。

15.   ICD-10-CM/PCS支持

Stata15支持ICD-10-CM 和 ICD-10-PCS, 由 NCHS 和CMS 提供的美国 ICD-10 代码。Stata15支持从2016版本开始(从2015年10月开始) 的代码, 当它们被授权在美国使用, 并支持所有后续版本。

Stata在 1998年开始支持ICD, 从ICD-9-CM 16版本开始, 并支持之后的每 ICD-9 版本。自2003年以来, Stata也支持ICD-10 代码版本。

1998年以来, Stata的ICD命令从仅仅是一个自动的有效代码和简短短语列表, 成为ICD代码的整个数据管理系统。该系统甚至包括在一个数据集中管理多个ICD版本的能力!

16.   联邦储备经济数据(FRED)支持

圣路易斯联邦储备局向注册用户提供超过47万的美国和国际经济和金融时间序列。注册是免费的并且很容易做。这项服务叫FRED。它包括来自84个来源的数据, 包括美联储、宾州世界表、欧统局和世界银行。

Stata 15中,你可以使用Stata的GUI来访问和下载FRED数据。可以按类别、发布或来源进行搜索或浏览。可以单击选择感兴趣的系列。选择1或选择100。当您点击下载"时, Stata将下载它们并将它们合并到一个内存中的单个自定义数据集中。

Stata命令行界面也提供了这些相同的功能。命令是import fred。当追踪月报表需要自动更新27个不同系列时, 该命令非常方便。

Stata可以访问 FRED和ALFRED。ALFRED是FRED的历史档案数据。

17.   其他

在Stata功能页面中了解更多上述功能, 还有以下功能:

. 贝叶斯多级模型

. 门限回归

. 具有随机系数的面板数据tobit

. 区间测量结果的多层回归

. 删失结果的多级Tobit回归

. 面板数据的协整测试

. 时间序列中多断点的测试

. 多组广义SEM

. 异方差的线性回归

. Heckman风格的样本选择Poisson模型

. 具有随机系数的面板数据非线性模型

. 贝叶斯面板数据模型

. 随机系数的面板数据区间回归

. SVG的导出

. 贝叶斯生存模型

. 零膨胀有序概率

. 添加您自己的电源和样本大小的方法

. 贝叶斯样本选择模型

. 支持瑞典语

. 对DO文件编辑器的改进

. 流随机数生成器

.对于java插件的改进

. Stata / MP更多的并行化

Stata15 官方新功能介绍地址: https://www.stata.com/new-in-stata/

推荐阅读更多精彩内容