全部版块 我的主页
论坛 计量经济学与统计论坛 五区 数据交流中心 数据求助
2197 1
2014-03-02
#程序
AR1_phi=-0.2
n=50;
set.seed(123456)
for(i in 1:10)                        #重复10遍
{
n0=1000                             #这1000个之前的是要删掉的,我们要的是后面n=50数据
n1=n0+n
z=rnorm(n1,mean=0,sd=1)          #生成1050个服从标准正态的误差z,但我们只要从1001到1050的后面50个就是下面的zt
x=filter(z,filter=phi,"recursive")      #生成AR(1)序列x(x里有1050个数,但我们只要从1000到1050的后面51个就是下面的xt)
zt=z[(n0+1):n1]                  
xt=x[n0:n1]
b=ar(xt, order.max=1,AIC=F,method= 'yw')      #再用ar函数识别刚才生成的xt
a=b[[2]]                                                              #a 使用Y-W方法估计真实的ph(i=-0.2)的估计量
print(a)      
}
#结果

[1] -0.5441331
[1] -0.2585425
[1] -0.3503617
[1] -0.2825224
numeric(0)
[1] -0.4107991
[1] -0.3618471
[1] -0.2454404
numeric(0)
[1] -0.2150401
#为什么会出现两个numeric(0)?求大神,我要崩溃了。


二维码

扫码加我 拉你入群

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

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

全部回复
2014-3-2 11:17:41
对不起大家,有个地方:把AR1_phi=-0.2改成phi=-0.2啊
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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