系统gmm为什么系数怎么求正负惯性系数号不稳定

苹果/安卓/wp
积分 1406, 距离下一级还需 819 积分
权限: 自定义头衔, 签名中使用图片, 隐身, 设置帖子权限
道具: 彩虹炫, 涂鸦板, 雷达卡, 热点灯, 金钱卡, 显身卡, 匿名卡, 抢沙发, 提升卡下一级可获得
权限: 设置回复可见道具: 沉默卡
(VIP/贵宾)二级
(VIP/贵宾)二级
已加入11天, 距下一级还需23天
权限: 隐身
道具: 金钱卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板, 匿名卡下一级可获得
权限: 签名中使用图片道具: 显身卡
开心签到天数: 959 天连续签到: 58 天[LV.10]以坛为家III
差分GMM可以通过sargan,但系数不显著。系统GMM通不过sargan,但系数显著。
怎么选择?
是否因为系统GMM使用了过多的工具变量,导致无法通过sargan检验?
不是说系统GMM比差分GMM更有效率吗?
支持楼主:、
购买后,论坛将把您花费的资金全部奖励给楼主,以表示您对TA发好贴的支持
载入中......
楼主解决问题了么?我也是通过不了sargan检验,怎么办
yan 发表于
楼主解决问题了么?我也是通过不了sargan检验,怎么办实在不行,用hansen吧
xiongjerry 发表于
实在不行,用hansen吧不是说主流期刊上要提下sargan检验
yan 发表于
不是说主流期刊上要提下sargan检验是啊,我那天还回帖说主流期刊都用的sargan,结果有人说没有这回事。
xiongjerry 发表于
是啊,我那天还回帖说主流期刊都用的sargan,结果有人说没有这回事。你说的那个人是我。我猜,你讲的主流期刊应该是经济学的,我看的主流期刊是管理学的,所以我才这么说。管理学基本上没有论文report Sargan,而是report Hansen。当然,管理学在GMM的使用上比经济学差了很多,最顶级的管理学期刊之一2009年的一篇论文的GMM的结果不仅没有report Instrument的数量和Sargan,而且Hansen的p-value全部等于1.00。
auirzxp 发表于
你说的那个人是我。我猜,你讲的主流期刊应该是经济学的,我看的主流期刊是管理学的,所以我才这么说。管 ...呵呵,我看的确实是经济学文章。
hansen p值为1难道不可疑吗?
stata有提示,hansen通常会倾向于认定工具变量的选择是有效的。
xiongjerry 发表于
呵呵,我看的确实是经济学文章。
hansen p值为1难道不可疑吗?
stata有提示,hansen通常会倾向于认定工 ...HANSEN的P-VALUE为1是非常可疑的。Roodman 2009特意强调了这点。
我有一个关于GMM的问题,向你请教,在下面的帖子:
xiongjerry 发表于
是啊,我那天还回帖说主流期刊都用的sargan,结果有人说没有这回事。有人说加了robust后稳健处理了方差,所有不能用Sargan检验,你怎么看?还有的文章用J统计量,这个怎么在Stata操作,不是用xtabond2命令,而是用了其他的?
xiongjerry 发表于
是啊,我那天还回帖说主流期刊都用的sargan,结果有人说没有这回事。有人说加了robust后稳健处理了方差,所有不能用Sargan检验,你怎么看?还有的文章用J统计量,这个怎么在Stata操作,不是用xtabond2命令,而是用了其他的?
初级热心勋章
初级热心勋章
中级热心勋章
中级热心勋章
高级热心勋章
高级热心勋章
特级热心勋章
高级热心勋章
初级信用勋章
初级信用勋章
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
论坛法律顾问:王进律师找工作总结之机器学习(28)
转载请注明出处【CSDN】
GMM ,Gaussian Mixture Model,顾名思义,就是说该由&多个高斯模型线性叠加&混合而成。每个高斯模型我们称之为
component 。GMM算法描述的是数据的本身存在的一种分布,如果component足够多的话,GMM可以逼近任意一种概率密度分布,但是此时的GMM模型就太过复杂了。
GMM 与 K-means
GMM算法跟K-means算法很像,它也是被用来聚类。在GMM中,component的个数我们定义为 K ,这跟K-means中的K一样,需要另外的方式去确定K值得大小。
在K-means中,每个聚类中心的初始化都会影响聚类效果,同样的,GMM算法对每个component的质心的初始化也很敏感。
在K-means中,二分K-means算法就是为了弱化初始点对聚类效果的影响而提出来的,具体思路如下:
首先将所有点作为一个簇,然后将该簇一分为二。之后选择能最大程度降低聚类代价函数(也就是误差平方和)的簇划分为两个簇。以此进行下去,直到簇的数目等于用户给定的数目k为止
伪代码如下:
将所有数据点看成一个簇&
当簇数目小于k时&
对每一个簇&
计算总误差&
在给定的簇上面进行k-均值聚类(k=2)&
计算将该簇一分为二后的总误差&
选择使得误差最小的那个簇进行划分操作
同样的,GMM也可以有类似的二分GMM算法,关于二分K-means算法的具体流程以及代码请参考博客:
GMM由K个Gaussian分布线性叠加而成,先看看GMM的概率密度函数:&
p(x)=∑k=1Kp(k)p(x|k)=∑k=1KπkN(x|μk,Σk)
该函数可以这么理解,假设我们有一个数据集,然后我们现在用GMM模型来描述这个数据集的分布。在已知数据集由component k 描述的情况下,数据集的概率密度函数为:&p(x|k)&。
当然,总共有 K 个component,每个component 对生成数据集的贡献为&p(k)&,或者说数据集由component
k生成的概率为&p(k),由
component k 生成数据集,其概率密度函数为&p(k)p(x|k)。将所有的component加起来就得到了GMM的概率密度函数。有点绕口,大致懂就好。
如果我们要从 GMM 的分布中随机地取一个点的话,实际上可以分为两步:首先随机地在这 K个Gaussian Component 之中选一个,每个 Component 被选中的概率实际上就是它的系数 pi(k) ,选中了 Component 之后,再单独地考虑从这个 Component 的分布中选取一个点就可以了──这里已经回到了普通的 Gaussian 分布,转化为了已知的问题。
假设现在有一个集,为什么要大数据集?待会会说。只要我们能用GMM算法来描述这个“客观存在”的数据集,那么GMM的K个component也就是对应的K个cluster了。根据数据来推算概率密度通常被称作
density estimation ,特别地,当我们在已知(或假定)了概率密度函数的形式,而要估计其中的参数的过程被称作“参数估计”。
每个component k 都是一个Gaussian分布,其均值设定为&μk&,方差设定为&Σk&,这个component的影响因子设定为&πk&。但是
我们一开始并不知道每个component k 的这几个参数的具体值,聚类误差函数中除了聚类后的label y之外,还有μk&、Σk&和&πk这3个我们不知道的隐含变量,这时问题就得用EM算法来迭代求解。
参数与似然函数
现在假设我们有 N 个数据点,并假设它们服从某个分布(记作&p(x)&),现在要确定里面的一些参数的值,例如,在
GMM 中,我们就需要确定 影响因子&π(k)、各类均值&μk&和
各类协方差&Σk&这些参数。
我们的想法是,找到这样一组参数,它所确定的概率分布生成这些给定的数据点的概率最大,而这个概率实际上就等于&ΠNi=1p(xi),我们把这个乘积称作似然函数
(Likelihood Function)。通常单个点的概率都很小,许多很小的数字相乘起来在计算机里很容易造成浮点数下溢,因此我们通常会对其取对数,把乘积变成加和&∑Ni=1logp(xi)&,具体函数如下:
∑i=1Nlog{∑k=1KπkN(xi|μk,Σk)}
接下来我们只要将这个函数最大化(通常的做法是求导并令导数等于零,然后解方程),亦即找到这样一组参数值,它让似然函数取得最大值,我们就认为这是最合适的参数,这样就完成了参数估计的过程。
由于在对数函数里面又有加和,我们没法直接用求导解方程的办法直接求得最大值。为了解决这个问题,我们采取之前从 GMM 中随机选点的办法:分成两步,E步和M步,这就是用EM算法求解GMM的过程。其实这跟K-means的求解思想很像,或者说,K-means算法的求解中就是EM算法的精髓。
1.估计数据由每个 Component 生成的概率(并不是每个 Component 被选中的概率):对于每个数据 来说,它由第 个 Component 生成的概率为:
γ(i,k)=πkN(xi|μk,Σk)∑Kj=1πjN(xi|μj,Σj)
其中&N(xi|μk,Σk)&就是后验概率
N(x|μ,Σ)=1(2π)D/21|Σ|1/2exp{-12(x-μ)TΣ-1(x-μ)}
2.通过极大似然估计可以通过求到令参数=0得到参数&μk,&Σk的值&
μk=1Nk∑i=1Nγ(i,k)xi
Σ=1Nk∑i=1Nγ(i,k)(xi-μk)(xi-μk)T
其中,Nk=∑Ni=1γ(i,k)&,故&πk&可估计为&Nk/N
3.重复迭代前面两步,直到似然函数的值收敛为止。
Matlab 实现
GMM函数,来自 pluskid
function varargout = gmm(X, K_or_centroids)
threshold = 1e-15;
[N, D] = size(X);
if isscalar(K_or_centroids)
rndp = randperm(N);
centroids = X(rndp(1:K), :);
K = size(K_or_centroids, 1);
centroids = K_or_
[pMiu pPi pSigma] = init_params();
Lprev = -inf;
while true
Px = calc_prob();
pGamma = Px .* repmat(pPi, N, 1);
pGamma = pGamma ./ repmat(sum(pGamma, 2), 1, K);
Nk = sum(pGamma, 1);
pMiu = diag(1./Nk) * pGamma' * X;
pPi = Nk/N;
for kk = 1:K
Xshift = X-repmat(pMiu(kk, :), N, 1);
pSigma(:, :, kk) = (Xshift' * (diag(pGamma(:, kk)) * Xshift)) / Nk(kk);
L = sum(log(Px*pPi'));
if L-Lprev & threshold
Lprev = L;
if nargout == 1
varargout = {Px};
model = [];
model.Miu = pM
model.Sigma = pS
model.Pi = pPi;
varargout = {Px, model};
function [pMiu pPi pSigma] = init_params()
pPi = zeros(1, K);
pSigma = zeros(D, D, K);
distmat = repmat(sum(X.*X, 2), 1, K) + repmat(sum(pMiu.*pMiu, 2)', N, 1) - 2*X*pMiu';
[dummy labels] = min(distmat, [], 2);
Xk = X(labels == k, :);
pPi(k) = size(Xk, 1)/N;
pSigma(:, :, k) = cov(Xk);
function Px = calc_prob()
Px = zeros(N, K);
for k = 1:K
Xshift = X-repmat(pMiu(k, :), N, 1);
inv_pSigma = inv(pSigma(:, :, k)+diag(repmat(threshold,1,size(pSigma(:, :, k),1))));
tmp = sum((Xshift*inv_pSigma) .* Xshift, 2);
coef = (2*pi)^(-D/2) * sqrt(det(inv_pSigma));
Px(:, k) = coef * exp(-0.5*tmp);
end123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
注意这句代码
coef = (2*pi)^(-D/2) * sqrt(det(inv_pSigma)); 11
乍看之下好像跟我们的后验概率公式很不符合啊!后验概率公式如下:&
N(x|μ,Σ)=1(2π)D/21|Σ|1/2exp{-12(x-μ)TΣ-1(x-μ)}
代码中的实现是 乘以协方差矩阵的逆矩阵的行列式的开根号后的值,根据线性代数的知识可以得到:|A-1|=1|A|&,
故代码没错。
data = load('testSet.txt');
[PX,Model] = GMM(data,4);
[~,index] = max(PX');
cent = Model.M
I = find(index == 1);
scatter(data(I,1),data(I,2))
scatter(cent(1,1),cent(1,2),150,'filled')
I = find(index == 2);
scatter(data(I,1),data(I,2))
scatter(cent(2,1),cent(2,2),150,'filled')
I = find(index == 3);
scatter(data(I,1),data(I,2))
scatter(cent(3,1),cent(3,2),150,'filled')
I = find(index == 4);
scatter(data(I,1),data(I,2))
scatter(cent(4,1),cent(4,2),150,'filled')
1234567891011121314151617181920212223242526272812345678910111213141516171819202122232425262728
采用同样的数据集: GMM聚类效果如下:
K-means效果如下:&
Python版本代码
Description :GMM in Python
Author : LiuLongpo
Time : 日16:54:48
Source :From pluskid
sys.path.append(&E:\Python\MachineLearning\PythonTools&)
import PythonUtils as pu
import matplotlib.pyplot as plt
import numpy as np
'矩阵的逆矩阵需要的库'
from numpy.linalg import *
def gmm(X,K):
N,D = np.shape(X)
randV = pu.randIntList(1,N,K)
centroids = X[randV]
pMiu,pPi,pSigma = inti_params(centroids,K,X,N,D);
Lprev = -np.inf
while True:
'Estiamtion Step'
Px = calc_prop(X,N,K,pMiu,pSigma,threshold,D)
pGamma = Px * np.tile(pPi,(N,1))
pGamma = pGamma / np.tile((np.sum(pGamma,axis=1)),(K,1)).T
'Maximization Step'
Nk = np.sum(pGamma,axis=0)
pMiu = np.dot(np.dot(np.diag(1 / Nk),pGamma.T),X)
pPi = Nk / N
for kk in range(K):
Xshift = X - np.tile(pMiu[kk],(N,1))
pSigma[:,:,kk] = (np.dot(np.dot(Xshift.T,np.diag(pGamma[:,kk])),Xshift)) / Nk[kk]
'check for convergence'
L = np.sum(np.log(np.dot(Px,pPi.T)))
if L-Lprev&threshold:
def inti_params(centroids,K,X,N,D):
pMiu = centroids
pPi = np.zeros((1,K))
pSigma = np.zeros((D,D,K))
distmat = np.tile(np.sum(X * X,axis=1),(K,1)).T \
+ np.tile(np.sum(pMiu * pMiu,axis = 1).T,(N,1)) \
- 2 * np.dot(X,pMiu.T)
labels = np.argmin(distmat,axis=1)
for k in range(K):
Xk = X[labels==k]
pPi[0][k] = float(np.shape(Xk)[0]) / N
pSigma[:,:,k] = np.cov(Xk.T)
return pMiu,pPi,pSigma
'计算概率'
def calc_prop(X,N,K,pMiu,pSigma,threshold,D):
Px = np.zeros((N,K))
for k in range(K):
Xshift = X - np.tile(pMiu[k],(N,1))
inv_pSigma = inv(pSigma[:,:,k]) \
+ np.diag(np.tile(threshold,(1,np.ndim(pSigma[:,:,k]))))
tmp = np.sum(np.dot(Xshift,inv_pSigma) * Xshift,axis=1)
coef = (2*np.pi)**(-D/2) * np.sqrt(np.linalg.det(inv_pSigma))
Px[:,k] = coef * np.exp(-0.5 * tmp)
def test():
X = pu.readDataFromTxt('testSet.txt')
num = np.size(X)
X = np.reshape(X,(num/2,2))
ppx = gmm(X,4)
index = np.argmax(ppx,axis=1)
plt.figure()
plt.scatter(X[index==0][:,0],X[index==0][:,1],s=60,c=u'r',marker=u'o')
plt.scatter(X[index==1][:,0],X[index==1][:,1],s=60,c=u'b',marker=u'o')
plt.scatter(X[index==2][:,0],X[index==2][:,1],s=60,c=u'y',marker=u'o')
plt.scatter(X[index==3][:,0],X[index==3][:,1],s=60,c=u'g',marker=u'o')
if __name__ == '__main__':
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878812345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
效果如下:
奇怪的是,用实现的时候,并没有出现协方差矩阵是奇异矩阵的现象,这是什么原因我也不是很清楚。
GMM与K-means对比
聚类效果差不多,初始值敏感的缺点也差不多,解决方案也差不多,二分法。不同点:GMM输出的是数据点属于每个每类的概率,我们用最大似然方法去确定分类。就严谨性来说,用概率进行描述数据点的分类,GMM显然要比K-mean好很多。
关于GMM算法中奇异矩阵的问题
这个问题应该说是GMM算法的一个瑕疵,如果运行上面的代码可以发现在求协方差矩阵的逆矩阵的时候,有时候会报错,说协方差矩阵是奇异矩阵(singular),此时求解矩阵的行列式就会报错,关于这个问题,pluskid在&&
中已经说的很清楚。这里总结一下解决方法:
假设有N个D维的样本数据,如果协方差矩阵是奇异矩阵,那么要检查一下N是否足够大,D是否可以减少几维最简单的解决方法之一,在协方差矩阵上加上一个对角线矩阵&λI,其中&λ&要足够小
,不过如果数据集太小,这样也只是减少发生协方差矩阵是奇异矩阵的概率而已。
代码和数据都已近存放到&&,可以提供下载,如果觉得有用就请给个star吧。
参考文献:
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:33368次
排名:千里之外
转载:195篇
译文:12篇
(2)(11)(1)(193)(2)
(window.slotbydup = window.slotbydup || []).push({
id: '4740887',
container: s,
size: '250,250',
display: 'inlay-fix'苹果/安卓/wp
积分 54, 距离下一级还需 31 积分
道具: 彩虹炫, 涂鸦板, 雷达卡, 热点灯, 金钱卡, 显身卡下一级可获得
权限: 自定义头衔
购买后可立即获得
权限: 隐身
道具: 金钱卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板
开心签到天数: 4 天连续签到: 1 天[LV.2]偶尔看看I
想问下各位大神,在动态面板数据使用系统gmm回归的时候,如果已经把被解释变量的滞后项加入了解释变量里面,那我在回归的时候还需要加入时间趋势项吗?如果加是用每个年份的二值变量来加吗?刚接触系统gmm,很多都不会唉
支持楼主:、
购买后,论坛将把您花费的资金全部奖励给楼主,以表示您对TA发好贴的支持
载入中......
我用的是xtabond2命令,
xtabond2 lnc l.lnc lnincome lnbud lnfdi& &,gmm(L.lnc&&) iv( lnbud lnincome lnfdi&&) twostep
xtabond2 lnc l.lnc lnincome lnbud lnfdi year1-year10 ,gmm(L.lnc ) iv( lnbud lnincome lnfdi year1-year10) twostep
这两个用哪个合适呢
这个更适合
xtabond2 lnc l.lnc lnincome lnbud lnfdi year1-year10 ,gmm(L.lnc ) iv( lnbud lnincome lnfdi year1-year10)
<font color="#7898222 发表于
想问下各位大神,在动态面板数据使用系统gmm回归的时候,如果已经把被解释变量的滞后项加入了解释变量里面, ...谢谢楼主,我也正好有用
auirzxp 发表于
这个更适合
xtabond2 lnc l.lnc lnincome lnbud lnfdi year1-year10 ,gmm(L.lnc ) iv( lnbud lnincome lnf ...谢谢!想再问几个稳健性检验的问题
我现在是研究一个政策(d*t)对lnc的影响,然后使用你说的回归,结果是显著的正。然后我想研究政策对另外两个变量的偏效应的影响,所以加入了政策和x1 x2的交互项,结果发现一个交互项显著,一个交互项不显著,而政策变量反而不显著了,这是为什么呢,是说明我模型有问题吗
说明政策的效应不稳定,取决于显著的那个交互项
<font color="#7898222 发表于
谢谢!想再问几个稳健性检验的问题
我现在是研究一个政策(d*t)对lnc的影响,然后使用你说的回归,结果 ...说明政策的效应不稳定,取决于显著的那个交互项
auirzxp 发表于
说明政策的效应不稳定,取决于显著的那个交互项其实x1和x2是一个传导路径,如果他们的交互项是显著而政策变量不显著,那我还能说政策是有效的吗
<font color="#7898222 发表于
其实x1和x2是一个传导路径,如果他们的交互项是显著而政策变量不显著,那我还能说政策是有效的吗在一定条件下有效,这个条件就是显著的交叉项对应的那个变量
auirzxp 发表于
在一定条件下有效,这个条件就是显著的交叉项对应的那个变量噢好的!还有个问题,另一个稳健性检验是把c的增长率作为因变量,自变量不变,再次回归,政策的参数估计却不显著,这会有问题吗
初级热心勋章
初级热心勋章
中级热心勋章
中级热心勋章
高级热心勋章
高级热心勋章
特级热心勋章
高级热心勋章
初级信用勋章
初级信用勋章
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
论坛法律顾问:王进律师苹果/安卓/wp
积分 386, 距离下一级还需 64 积分
权限: 自定义头衔, 签名中使用图片
道具: 彩虹炫, 涂鸦板, 雷达卡, 热点灯, 金钱卡, 显身卡, 匿名卡下一级可获得
道具: 抢沙发
购买后可立即获得
权限: 隐身
道具: 金钱卡, 彩虹炫, 雷达卡, 热点灯, 涂鸦板
苦逼签到天数: 88 天连续签到: 1 天[LV.6]常住居民II
请问系统GMM估计中,一步法和两步法的原理是什么?谁能给我解释一下?
载入中......
看到一篇论文中这么写的,希望有所帮助:GMM估计包括一步(One-Step)和两步(Two-Step)的GMM。两步估计的权重矩阵依赖于估计参数且标准差存在向下偏倚,并没有带来多大的效率改善且估计量不可靠,一步估计量尽管效率有所下降但它是一致的,因而在经验应用中人们通常使用一步GMM估计[15]。理论上,一步系统广义矩估计(One-StepSystemGMM)利用了比一步差分广义矩估计(One-stepDifference-GMM)更多的信息,前者可以解决后者不能解决的内生性和弱工具变量问题,因而前者比后者的估计结果更有效[16]。BlundellandBond[17]利用蒙特卡罗模拟实验也证实,在有限样本下,系统GMM比差分GMM估计的偏差更小、效率也有所改进。因此,本文采取一步系统GMM估计方法
木莲子 发表于
看到一篇论文中这么写的,希望有所帮助:GMM估计包括一步(One-Step)和两步(Two-Step)的GMM。两步估计的权重 ...学习了
最近做模型,为什么两步估计结果好多解释变量的估计系数直接为0,而用一步估计的时候就不会出现这种情况,求大神们的指导。
木莲子 发表于
看到一篇论文中这么写的,希望有所帮助:GMM估计包括一步(One-Step)和两步(Two-Step)的GMM。两步估计的权重 ...请问你看这篇论文名字是什么啊?
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
&nbsp&nbsp|
如有投资本站或合作意向,请联系(010-);
邮箱:service@pinggu.org
投诉或不良信息处理:(010-)
论坛法律顾问:王进律师stata,系统gmm
Stata的操作步骤_stata,系统gmm篇一
Stata的操作步骤:
英文部分都是命令,直接复制粘贴就可以
#1、建立自回归模型
use infln_wage.dta
#查看数据的内容
#查看汇总数据信息
#设定为时间序列数据文件
#画出时间序列图形
twoway (tsline inf wgwth)
#inf对其三阶滞后做自回归
reg inf l1.inf l2.inf l3.inf
#自回归分布滞后模型
回归都用reg
reg inf wgwth l1.wgwth l2.wgwth l3.wgwth l1.inf l2.inf
因为是要稳定的数据,用检验的方法检验是不是稳定的数据
#2、非稳定数据的检查和回归
用数据文件usa
use usa.dta
#查看数据的内容
#查看汇总数据信息
#设定为时间序列数据文件
#画出时间序列图形
twoway (tsline gdp)
#画出一阶差分时间序列图形
twoway (tsline d.gdp)
d.做一阶差分
d2.做二阶差分
d3.做三阶差分
#画出二阶差分时间序列图形
tsline——折线图
twoway (tsline d2.gdp)
#一阶差分自回归
reg d.f l1.f l1.d.f
#单位根检验
dfuller f, regress lags(1)
dfuller f, noconstant lags(0)
平稳以后才该回归就做回归
#R语言的回归命令
#调入输入数据程序包
&Library(foreign)
#安装car的包
&install.packages(“car”){stata,系统gmm}.
&u&-read.dta(“e:usa.dta”)
#查看数据汇总情况
&summary(u)
#查看前6个数据
#调入系统中的数据
&attach(women)
&plot(weight,height)
#weight对height回归
&h&-lm(weight~height+I(height^2),data=women)
#查看回归结果
&summary(f)STATA面板数据模型操作命令_stata,系统gmm篇二
STATA 面板数据模型估计命令一览表
一、静态面板数据的STATA处理命令
y???xitiit???it
固定效应模型
y?xitit???it
itit?????it
随机效应模型
(一)数据处理
●tsset code year
该命令是将数据定义为“面板”形式
该命令是了解面板数据结构
●summarize sq cpi unem g se5 ln
各变量的描述性统计(统计分析)
●gen lag_y=L.y ///////
产生一个滞后一期的新变量
gen F_y=F.y ///////
产生一个超前项的新变量
gen D_y=D.y ///////
产生一个一阶差分的新变量
gen D2_y=D2.y ///////
产生一个二阶差分的新变量
(二)模型的筛选和检验
●1、检验个体效应(混合效应还是固定效应)(原假设:使用OLS混合模型) ●xtreg sq cpi unem g se5 ln,fe
对于固定效应模型而言,回归结果中最后一行汇报的F统计量便在于检验所有的个体效应整体上显著。在我们这个例子中发现F统计量的概率为0.0000,检验结果表明固定效应模型优于混合OLS模型。
●2、检验时间效应(混合效应还是随机效应)(检验方法:LM统计量) (原假设:使用OLS混合模型)
●qui xtreg sq cpi unem g se5 ln,re
(加上“qui”之后第一幅图将不会呈现)
可以看出,LM检验得到的P值为0.0000,表明随机效应非常显著。可见,随机效应模型也优于混合OLS模型。
●3、检验固定效应模型or随机效应模型 (检验方法:Hausman检验) 原假设:使用随机效应模型(个体效应与解释变量无关)
通过上面分析,可以发现当模型加入了个体效应的时候,将显著优于截距项为常数假设条件下的混合OLS模型。但是无法明确区分FE or RE的优劣,这需要进行接下来的检验,如下:
Step1:估计固定效应模型,存储估计结果
Step2:估计随机效应模型,存储估计结果
Step3:进行Hausman检验
●qui xtreg sq cpi unem g se5 ln,fe
est store fe
qui xtreg sq cpi unem g se5 ln,re
est store re
hausman fe
(或者更优的是
hausman fe,sigmamore/ sigmaless)
可以看出,hausman检验的P值为0.0000,拒绝了原假设,认为随机效应模型的基本假设得不到满足。此时,需要采用工具变量法和是使用固定效应模型。
(三)静态面板数据模型估计
●1、固定效应模型估计
●xtreg sq cpi unem g se5 ln,fe
(如下图所示)
其中选项fe表明我们采用的是固定效应模型,表头部分的前两行呈现了模型的估计方法、界面变量的名称(id)、以及估计中使用的样本数目和个体的数目。第3行到第5行列示了模型的拟合优度、分为组内、组间和样本总体三个层面,通常情况下,关注的是组内(within),第6行和第7行分别列示了针对模型中所有非常数变量执行联合检验得到的F统计量和相应的P值,可以看出,参数整体上相当显著。
需要注意的是,表中最后一行列示了检验固定效应是否显著的F统计量和相应的P值。显然,本例中固定效应非常显著。
●2、随机效应模型估计
若假设本例的样本是从一个很大的母体中随机抽取的,且
不相关,则我们可以将
更为合适。
●xtreg sq cpi unem g se5 ln,re
(如下图所示) ?i与解释变量均?i视为随机干扰项的一部分。此时,设定随机效应模型
●3、时间固定效应(以上分析主要针对的是个体效应)
如果希望进一步在上述模型中加入时间效应,可以采用时间虚拟变量来实现。首先,我们需要定义一下T-1个时间虚拟变量。
●tab year ,gen(dumt)
(tab命令用于列示变量year的组类别,选项gen(dumt)用于生产一个以dumt开头的年度虚拟变量)
drop dumt1
(作用在于去掉第一个虚拟变量以避免完全共线性)
若在固定效应模型中加入时间虚拟变量,则估计模型的命令为:
●xtreg sq cpi unem g se5 ln dumt*,feDIF-GMM和SYS-GMM_stata,系统gmm篇三
DIF-GMM和SYS-GMM(System GMM)
面板数据模型最常用的估计方法是固定效应模型和随机效应模型,当解释变量具有内生性时,这两种模型均不能保证得出无偏的参数估计,此时,工具变量法是更为合适的估计方法。本文的实证模型中由于出现了滞后被解释变量,模型的内生性问题不可避免地出现了。为了得出实证方程(1)无偏估计值,选择合适的工具变量是十分必要的。对于这个问题, Arellano和Bond ( 1991) [15]提出了用一阶差分GMM ( first differenced GMM)估计方法来解决。但是, B lundell和Bond ( 1998) [16]曾指出,一阶差分GMM估计方法容易受到弱工具变量的影响而得到有偏的估计结果。为了克服弱工具变量的影响, Arellano和Bover ( 1995) [17]以及B lundell和Bond (1998)提出了另外一种更加有效的方法,即系统GMM ( System GMM)估计方法。其具体做法是将水平回归方程和差分回归方程结合起来进行估计,在这种估计方法中,滞后水平作为一阶差分的工具变量,而一阶差分又作为水平变量的工具变量。
*-两阶段估计
*-AB91(Tab4(a2)) 考虑异方差问题
* 利用第一阶段估计得到的残差构造方差-协方差矩阵,进而重新估计模型
xtabond n L(0/1).w L(0/2).(k ys) yr1980-yr1984, lags(2) twostep
est store ab4_twostep
*-说明:此时,Sargan 检验无法拒绝原假设
estat sargan
*-AB91重要建议:
(1) 采用一阶段估计结果进行系数显著性的统计推断;
(2) 采用两阶段估计给出的 Sargan统计量进行模型筛选
*-进一步的讨论:
虽然AB91建议不要采用两阶段(非稳健)估计进行统计推断,
但Windmeijer(2005,Journal of Econometrics)通过模拟分析表明,
采用纠偏(bias-corrected,WC)后的稳健性VCE,可以更好地进行统计推断
xtabond n L(0/1).w L(0/2).(k ys) yr1980-yr1984,
lags(2) twostep vce(robust)
est store ab_wc_rb
*-结果对比
local mm &ab4_one_rb ab4_twostep ab_wc_rb&
esttab `mm&#39;,mtitle(`mm&#39;)
AB91_onestep_rb 的结果与 AB91_WC_rb 的参数估计相同,后者标准误较大
建议采用 Windmeijer(2005) 两阶段-纠偏-稳健型 估计量。
*---------------------------------
*-7.8.4 系统GMM估计量
*---------------------------------
==本节目录==
7.8.4.1 简介
7.8.4.2 xtabond2 命令
-A- 使用 xtabond2 命令得到 -一阶差分估计量
-B- 系统 GMM 估计量
-C- 实例:中国上市公司资本结构动态调整
-D- xtabond2 命令的其他用途
7.8.4.3 xtdpdsys 命令
7.8.4.4 xtdpd 命令
7.8.4.5 xtlsdvc 命令
*-----------------
*-重点参考文献:
* Arellano and Bover (1995),
* Blundell and Bond(1998)
* Haha(1999), Judson and Owen(1999)
*-适用范围:大N,小T
*-AB91 的局限
* (1) 当 y[i,t-1] 的系数较大,即 y[i,t] 表现出强烈的序列相关时;
* (2) 当 Var[u_i]/Var[e_it] 较大时,
即个体效应的波动远大于常规干扰项的波动;
*-AB91 的表现欠佳。
* 原因在于,水平滞后项是差分方程中内生变量的-弱工具变量-;
* 因此,需要寻求更佳的工具变量
*- 系统GMM的基本思想:
*- 几个概念
水平值 —— y
x{stata,系统gmm}.
差分值 —— D.y D.x
水平方程:y_it
= b1*y_it-1
+ u_i + v_it
可用工具变量:D.y[i,t-2] 可以作为 y[i,t-1] 的工具变量
差分方程:D.y_it = b1*D.y_it-1 + b2*D.x_it
可用工具变量:y[i,t-3],y[i,t-4]...都可以作为 D.y[i,t-1]的工具变量
*- 一阶差分GMM估计量与系统GMM估计量的区别
(1) 差分GMM估计量采用水平值的滞后项作为差分变量的工具变量;
如 y_it-3 是 D.y_it-1 的工具变量
(2) 系统GMM估计量进一步采用差分变量的滞后项作为水平值的工具变量;
相当于进一步增加了可用的工具变量,
且估计过程中同时使用水平方程和差分方程
(3) 主要原因在于差分GMM的工具变量往往是弱工具变量,即 corr(X,Z) 过低
*- xtabond2 命令---Roodman(2005)
既可以估计差分 GMM 估计量,也可以估计系统 GMM 估计量;
同时可以估计一般化的回归模型
提供两阶自相关检验,Sargan检验,Hansen检验,以及工具变量外生性检验stata命令大全(全)_stata,系统gmm篇四
********* 面板数据计量分析与软件实现 *********
说明:以下do文件相当一部分内容来自于中山大学连玉君STATA教程,感谢他的贡献。本人做了一定的修改与筛选。
*----------面板数据模型
* 1.静态面板模型:FE 和RE
* 2.模型选择:FE vs POLS, RE vs POLS, FE vs RE
(pols混合最小二乘估计)
* 3.异方差、序列相关和截面相关检验
* 4.动态面板模型(DID-GMM,SYS-GMM)
* 5.面板随机前沿模型
* 6.面板协整分析(FMOLS,DOLS)
*** 说明:1-5均用STATA软件实现, 6用GAUSS软件实现。
* 生产效率分析(尤其指TFP):数据包络分析(DEA)与随机前沿分析(SFA)
*** 说明:DEA由DEAP2.1软件实现,SFA由Frontier4.1实现,尤其后者,侧重于比较C-D与Translog生产函数,一步法与两步法的区别。常应用于地区经济差异、FDI溢出效应(Spillovers Effect)、工业行业效率状况等。
* 空间计量分析:SLM模型与SEM模型
*说明:STATA与Matlab结合使用。常应用于空间溢出效应(R&D)、财政分权、地方政府公共行为等。
* ---------------------------------
* -------- 一、常用的数据处理与作图 -----------
* ---------------------------------
* 指定面板格式
xtset id year (id为截面名称,year为时间名称)
/*数据特征*/
xtsum logy h /*数据统计特征*/
sum logy h
/*数据统计特征*/
*添加标签或更改变量名
label var h &人力资本&
rename h hum
sort id year
/*是以STATA面板数据格式出现*/
sort year id
/*是以DEA格式出现*/
*删除个别年份或省份
drop if year&1992
drop if id==2
/*注意用==*/
*如何得到连续year或id编号(当完成上述操作时,year或id就不连续,为形成panel格式,需要用egen命令)
egen year_new=group(year)
xtset id year_new
**保留变量或保留观测值
/*删除变量*/
keep if year==2000
**排序{stata,系统gmm}.
sort id year
/*是以STATA面板数据格式出现
sort year id
/*是以DEA格式出现
**长数据和宽数据的转换
*长&&&宽数据
reshape wide logy,i(id) j(year)
*宽&&&长数据
reshape logy,i(id) j(year)
**追加数据(用于面板数据和时间序列)
xtset id year
tsappend,add(5)
/表示在每个省份再追加5年,用于面板数据/
.tsappend,add(8)
/表示追加8年,用于时间序列/
*方差分解,比如三个变量Y,X,Z都是面板格式的数据,且满足Y=X+Z,求方差var(Y),协方差Cov(X,Y)和Cov(Z,Y)
bysort year:corr Y X Z,cov
**生产虚拟变量
*生成年份虚拟变量
tab year,gen(yr)
*生成省份虚拟变量
tab id,gen(dum)
**生成滞后项和差分项
xtset id year
gen ylag=l.y
/*产生一阶滞后项),同样可产生二阶滞后项*/
ylag2=L2.y
gen dy=D.y
/*产生差分项*/
*求出各省2000年以前的open inv的平均增长率
collapse (mean) open inv if year&2000,by(id)
变量排序,当变量太多,按规律排列。可用命令
order fdi open insti
*-----------------
二、静态面板模型
*-----------------
*--------- 简介 -----------
* 面板数据的结构(兼具截面资料和时间序列资料的特征)
use product.dta, clear
xtset id year
xtdes{stata,系统gmm}.
* ---------------------------------
* -------- 固定效应模型 -----------
* ---------------------------------
* 实质上就是在传统的线性回归模型中加入 N-1 个虚拟变量,
* 使得每个截面都有自己的截距项,
* 截距项的不同反映了个体的某些不随时间改变的特征
* 例如: lny = a_i + b1*lnK + b2*lnL + e_it
* 考虑中国29个省份的C-D生产函数
*******-------画图------*
*散点图+线性拟合直线
twoway (scatter logy h) (lfit logy h)
*散点图+二次拟合曲线
twoway (scatter logy h) (qfit logy h)
*散点图+线性拟合直线+置信区间
twoway (scatter logy h) (lfit logy h) (lfitci logy h)
*按不同个体画出散点图和拟合线,可以以做出fe vs re的初判断*
twoway (scatter logy h if id&4) (lfit logy h if id&4)
(lfit logy h if id==1)
(lfit logy h if id==2)
(lfit logy h if id==3)
*按不同个体画散点图,so beautiful!!!*
graph twoway scatter
logy h if id==1 ||
logy h if id==2,msymbol(Sh) || scatter
logy h if id==3,msymbol(T)
|| scatter
logy h if id==4,msymbol(d) || , legend(position(11) ring(0) label(1 &北京&) label(2 &天津&) label(3 &河北&) label(4 &山西&))
**每个省份logy与h的散点图,并将各个图形合并
twoway scatter logy h,by(id) ylabel(,format(%3.0f)) xlabel(,format(%3.0f))
*每个个体的时间趋势图*
xtline h if id&11,overlay legend(on)
* 一个例子:中国29个省份的C-D生产函数的估计
tab id, gen(dum)
* 回归分析
reg logy logk logl dum*,
est store m_ols
xtreg logy logk logl, fe
est store m_fe
est table m_ols m_fe, b(%6.3f) star(0.1 0.05 0.01)
* Wald 检验
test logk=logl=0
test logk=logl
* stata的估计方法解析
* 目的:如果截面的个数非常多,那么采用虚拟变量的方式运算量过大
因此,要寻求合理的方式去除掉个体效应
因为,我们关注的是 x 的系数,而非每个截面的截距项
* 处理方法:
* y_it = u_i + x_it*b + e_it
* ym_i = u_i + xm_i*b + em_i
= um + xm*b + em
* (1) - (2), 可得:
* (y_it - ym_i) = (x_it - xm_i)*b + (e_it - em_i)
(4) /*within estimator*/
* (4)+(3), 可得:
* (y_it-ym_i+ym) = um + (x_it-xm_i+xm)*b + (e_it-em_i+em)
* 可重新表示为:
* Y_it = a_0 + X_it*b + E_it
* 对该模型执行 OLS 估计,即可得到 b 的无偏估计量
**stata后台操作,揭开fe估计的神秘面纱!!!
egen y_meanw = mean(logy), by(id)
/*个体内部平均*/
egen y_mean
= mean(logy)
/*样本平均*/
egen k_meanw = mean(logk), by(id)
egen k_mean
= mean(logk)
egen l_meanw = mean(logl), by(id)
egen l_mean
= mean(logl)
gen dyw = logy - y_meanw
gen dkw = logk - k_meanw{stata,系统gmm}.
gen dlw=logl-l_meanw
reg dyw dkw dlw,nocons
est store m_stata
gen dy = logy - y_meanw + y_mean
gen dk = logk - k_meanw +k_mean
gen dl=logl-l_meanw+l_mean
reg dy dk dl
est store m_stata
est table m_*, b(%6.3f) star(0.1 0.05 0.01)
* 解读 xtreg,fe 的估计结果
xtreg logy h inv gov open,fe
* y_it = a_0 + x_it*b_o + e_it
pooled OLS
* y_it = u_i + x_it*b_w + e_it
* ym_i = a_0 + xm_i*b_b + em_i
between estimator
* --& R-sq: within
模型(2)对应的R2,是一个真正意义上的R2
* --& R-sq: between
corr{xm_i*b_w,ym_i}^2
* --& R-sq: overall
corr{x_it*b_w,y_it}^2
*-- F(4,373) = 855.93检验除常数项外其他解释变量的联合显著性
*STATA的简单命令_stata,系统gmm篇五
STATA的简单命令
Stata中最重要的命令莫过于help和search了。
help用于查找精确的命令,而search是模糊查找。
例如:help regress
又如:我们记不清regress命令的全名,只记得regress的前半部分reg,
那么可以输入search reg
用户获得信息最有效的另一个途径是使用Statalist在线论坛,该论坛提供Stata用户交流的一个良好的平台。要加入Statalist,我们可以给以下地址发个邮件:
majordomo@hsphsun2.harvard.edu
邮件的内容为:subscribeStatalist
变量的命名:
1. 变量名可达32个字符。
2. 字符组成部分为A~Z、a~z、0~9与下划线“_”,这些字符以外的其他符号不可以出现在变量名中。
3. 变量名不能以数字开头。
4. 变量名区分大小写。
5. 倘若遵循以上原则依然无法正常命名变量,那么这个变量可能与Stata自身保留的供系统使用的变量重复了。
创建数据文件的方法:
1. 手动输入。
2. 从excel等文件中复制粘贴到stata数据表中。
3. 运用stata软件导入。
查看数据的概貌:
summarize x
codebook x
如果上面两个命令后面不加内容,那么显示的结果是所有变量的概貌。
对数据进行排序的命令:sort 标准1 标准2 标准3
生成数据的命令:gen
1. 如果要得到一阶差分,可以用以下命令:gen Difference_invest(新变量的名称是任意的)=d.invest(d.是运算符号,不得改变;invest是变量名称)
2. 要想产生一个新的变量Lag_invest,也就是invest的一阶滞后,那么我们可以采用如下命令:gen Lag_invest = l.invest
3. 生成对数的命令:gen Ln_invest=ln(invest)
作散点图的命令:scatter
1. scatter x1 x2:scatter后的第一个变量是纵轴的变量,第二个变量是横轴的变量。
2. scatter x1 x2, connect(1):以直线的方式连接相邻的两个点。
3. scatter x1 x2, connect(1) msymbol(i):散点的显示方式为“看不见”。
相关性检验:
回归方程的斜率系数在一定程度上也是反映两个变量之间关系的密切程度,斜率系数的平方根就是相关系数。
1. pwcorr命令(用于计算Pearson相关系数),它的好处是尽可能使用两两变量中所有没有
缺失的数据,而不像correlate只采用没有任何缺失数据的完整的观测值。
pwcorr [varlist], sig star(.1):star(.1)是为了对显著性超过0.1的相关系数打上星号
pwcorr [varlist], sig print (.1):print (.1)则是仅仅显示这些显著的相关系数
2. spearman命令(用于计算Spearman相关系数)。
截面数据的估计命令
如何创建一个截面数据文件?只需要从excle中拷贝相应的数据到stata中即可,不需要特别的命令说明它是截面数据。
截面数据的回归主要需要注意以下几点:多重共线性(当样本量较小时,例如小于100)和异方差。而且需要考察t统计值、R2(adj-R2)、F统计量。
1. 检验自变量的相关性。(第1步也可以暂时不做,等到回归结束以后再做)
pwcorr [varlist], sig print(.05)
2. 对模型进行回归。
一个普通的回归命令:reg y x1 x2 x3 x4 x5, robust(截面数据一律加上robust)
倘若回归结果的经济学含义不合理(包括系数的正负号和显著性水平),而且前面的相关性检验中自变量的相关性十分高,那么有可能存在严重的多重共线性,为了精确起见,可以用vif来判断多重共线性是否严重(当vif的最大值大于10,同时各vif的平均值大于1时,表明多重共线性比较严重。使用vif命令时一定要在回归命令执行以后再用)。如何处理多重共线性?剔除变量法、逐步回归法以及增加样本容量。
3. 运用剔除变量法进行回归。
4. 运用逐步回归法进行回归。
逐步回归命令:
swreg y x1 x2 x3 x4 x5, pr(.1):逐步回归,从最不显著的变量开始删除,直到所有变量在设定水平下(0.1)显著。
swreg y x1 x2 x3 x4 x5, pr(.1) lockterm1:逐步回归,从最不显著的变量开始删除,直到所有变量在设定水平下(0.1)显著;而且加入lockterm项,为了保证第一项自变量不被删除。{stata,系统gmm}.
swreg y x1 x2 x3 (x4 x5), pr(.1):逐步回归,从最不显著的变量开始删除,直到所有变量在设定水平下(0.1)显著;而且加入()项,为了保证x4和x5要么同时出现,要么同时不出现。
时间序列数据的估计命令
如何创建一个截面数据文件?先把数据转移到stata中,然后用tsset命令。
tsset time, yearly(或者weekly、monthly、quarterly)
此时,一定要保证表示时间的那一列数据(即年份)的名称为time。
时间序列数据的回归主要需要注意以下几点:多重共线性(当样本量较小时,例如小于100)和序列相关性。而且需要考察t统计值、R2(adj-R2)、F统计量、D.W.值。
首先用reg命令进行回归,例如:reg y x1 x2 x3 x4 x5,并考察D.W.值(使用estatdwatson这一命令),如果D.W.值严重远离2,那么要进行调整(调整方法如黄色底纹),直到调整到2附近,然后考察回归结果是否符合经济学含义,倘若不符合,那么要注意是否受到多重共线性的影响(通过相关系数和vif值来判断)。在处理多重共线性时,可以用类似于处理截面数据的方法(剔除变量法),同时还要看D.W.值。此外,还可以用差分法来处理多重共线性(此方法用得不多)。
检验DW值的命令:estatdwatson
用广义差分法考虑序列相关性的命令(即调整DW值的命令):
reg y x1 x2 x3 x4 x5 L.y(后面还可以运用L.y L2.y)
用序列相关稳健标准误法考虑序列相关性的命令(即调整DW值的命令):
reg y x1 x2 x3 x4 x5, robust
考虑多重共线性的方法除了以上截面数据中用到的方法以外,还可以用差分法,然后再看vif值。
regD.y D.x1 D.x2 D.x3 D.x4 D.x5
面板数据的估计命令
如何创建一个面板数据文件?
xtset id year
面板数据的回归主要需要注意:多重共线性(当样本量较小时),异方差和序列相关性在很
2多研究中可以不必深究。而且需要考察t统计值、R(adj-R2)、F统计量,选择固定效应(fixed
effect)或随机效应(random effect)。
多重共线性的处理方法可以参照截面数据和时间序列数据的处理方法。
固定效应和随机效应的选择:(xtreg后面紧挨着的变量是被解释变量,然后接下来才是解释变量)
xtreg被解释变量解释变量, fe
est store fe
xtreg被解释变量解释变量, re
est store re
如果hausman检验的结果(Prob&chi2)小于0.1,那么选择固定效应;如果(Prob&chi2)大于0.1,或者chi2的值小于0,那么选择随机效应。
xtabonddepvarindepvars
sargan检验:
estatsargan
自相关检验:
estatabond
同时控制时间因素(year)和行业因素(industrycode),即自动加入虚拟变量的命令xi的用法:
xii.yeari.industrycode
加入自动生成的虚拟变量,并且运用稳健标准误进行固定效应回归的命令:
xtreglnexlngdpcnlngdppartnereducationjobiprrdlawhii.yeari.industrycode, fe robust
面板数据中2sls的命令(这可能是默认的命令,还可以根据具体情况更改):
(1)xtivreglnexlktfprd size fdii.year i.id (finance=l.finance),此时怀疑解释变量finance是内生的,而且以finance的一阶滞后作为IV。注意:括号前面必须有空格!
(2)xtivreglnexlktfprd size fdii.year i.id (finance=l.finance l2.finance),此时怀疑解释变量finance是内生的,而且以finance的一阶滞后和二阶滞后作为IV。注意:括号前面必须有空格!
如果用overid,需要安装overid:ssc install overid, replace
如果用xtoverid,需要安装xtoverid:ssc install xtoverid, replace
如果用ranktest,需要安装ranktest:ssc install ranktest, replace
有时即使安装以后依然无法运用,可能是由于自变量太多导致的,例如控制行业固定效应、时间固定效应等固定效应时会增加几十个虚拟变量,这时可能由于模型无法运算而无法运用这些命令,GMM方法似乎也有类似情况。
例如:xtivreglnexlngdpcnlngdppartner distance language border (fincountry=l.fincountry l2.fincountry) findepfinancefin,re
检验工具变量识别不足时用命令ranktest,以上例子应该是ranktest (fincountry) (l.fincountry l2.fincountry)【理想的结果是Kleibergen-PaaprkLM的p值小于0.1】
检验弱工具变量时也用命令ranktest,但要在后面加上wald,以上例子应该是ranktest (fincountry) (l.fincountry l2.fincountry),wald【理想的结果是Kleibergen-PaapWald rkF的p值小于0.1】
检验过度识别时用命令xtoverid【理想的结果Sargan-Hansen检验的p值大于0.1】
更多相关内容:
与"stata,系统gmm"相关文章
热门排行榜}

我要回帖

更多关于 相关系数正负 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信