全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件
9063 3
2013-09-20
Cameron和Trivedi的microeconometrics上的一道习题,对bootstrap的方法还是不是很懂。希望大家帮助!

背景:data generating process (DGP)已知,并且生成了20个样本(题里说的是,x_1 ~ chi2(4) - 4, x_2 ~ 3.5 + U[1,2], 最后的error term u ~ 0.3*N(0, 25) + 0.7*N(0, 5), 应变量y由公式y = 1.3x_1 + 0.7x_2 + 0.5u生成)。然后做一个OLS: y = b0 + b1x_1 + b2x_2 + u。

问题:首先是先用最小平方来估计\gamma = b_1 + b_2^2,因为已经做了OLS这个很容易得到。再求b_1 + b_2^2的标准误,这个用delta method就可以了。

下面的两问关于bootstrap,不是很理解,首先是用paired bootstrap,次数取B = 25,来估计\gamma的标准误。这里是指每“bootstrap一次”然后resample新的等规模数据,做OLS,得到相应的统计量(比如系数标准误),再用delta method得到(b_1 + b_2^2)的标准误吗?用stata和matlab有没有现成的函数来算这个呢?


剩下一个是取B = 999,对H0: \gamma = b_1 + b_2^2 = 1做假设检验(alpha = 0.05)。这个貌似也是得每次bootstrap得到统计的估计量的问题。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-9-27 15:20:26
假设你的第一个问题是求var(b_1 + b_2^2):则根据paired bootstrap方法,采用成对有放回抽取样本(yi,xi),抽取个数为原始样本容量一样,这样得到一组样本,利用OLS估计b_1 , b_2^2。从而得到b_1 + b_2^2,重复上述过程共B=25次,从而得到25个gamma的值,然后求这25个gamma的平均值,利用普通的方差公式来计算就可以了,这是对估计量是非线性时候使用Bootstrap方法进行计算。
第二个问题:如果是进行假设检验,则方法同上,只不过是要计算B=999次而已,得到999个gamma值,然后利用公式计算(涉及到公式编辑,这里不方便书写)实际拒绝概率再与0.05比较,如果小于0.05.就拒绝原假设,否则就接受原假设。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-9-28 00:59:56
哦哦,懂了!谢谢!!
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2019-5-15 23:57:48
function [out] = bootstrap(data,B)
%
%   Bootstrap method -produce B dataSet
%
%   Inputs:
%       data:origianl data set whose size is [M,N],which means feature Dimens is M and the original dataset contains N samples  
%       B:number of dataSet
%    Outputs:
%       out:B bootstrap resamples of the input data  whose size is [M,N,B]
[M,N]=size(data);
if (exist('B')~=1), B=N;  end;
out=zeros(M,N,B);
index=unidrnd(N,N,B);
out=reshape(data(:,index),M,N,B);
end
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群