全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 EViews专版
983 1
2014-04-02
想要比较矩阵与矩阵列数值,具体的代码应该怎么写?模型系数不同是否AIC,SC数值是一样的?我所研究的问题是,设定数据使用最小二乘法建立了模型,并且得出系数估计值,进而提取R2以及AIC,SC的数值,将各模型数据进行比较,然后得出哪个模型最好。但是问题出现在系数怎么改变但是AIC,SC的数值尽然是一样的。并且假设数值一样,但是我数据比较时,发生了不一样,很疑惑,求解答~谢谢!!附上我的编程,求大神指导!使用的是eviews6.0
workfile moni u 1 50
  !b1=1000
  !b2=2
  !b3=3
  matrix(100,3) f1
  matrix(100,3) f2
  matrix(100,3) f3
  matrix(100,3) f4
  matrix(100,3) f5
  matrix(100,4) ss1
  matrix(100,4) ss2
  matrix(100,4) ss3
  matrix(100,4) ss4
  matrix(100,4) ss5
  matrix(4,4) p
  
  !n11=0
  !n12=0
  !n13=0
  !n14=0
  !n21=0
  !n22=0
  !n23=0
  !n24=0
  !n31=0
  !n32=0
  !n33=0
  !n34=0
  !n41=0
  !n42=0
  !n43=0
  !n44=0
  for !K=1 to 100
  series x1=2000*nrnd
  series x2=2000*nrnd
  series u=200*nrnd   
  series ser01=!b1+!b2*x1+!b3*x2+u
  equation eql1.ls ser01=c(11)+c(12)*x1+c(13) *x2
  scalar s11=eql1.@r2
  scalar s12=eql1.@rbar2
  scalar s13=eql1.@aic
  scalar s14=eql1.@schwarz
  f1(!k,1)=c(11)
  f1(!k,2)=c(12)
  f1(!k,3)=c(13)
  ss1(!k,1)=s11
  ss1(!k,2)=s12
  ss1(!k,3)=s13
  ss1(!k,4)=s14

  series ser01=!b1+!b2*x1+u      
  equation eql2.ls ser01=c(21)+c(22)*x1
  f2(!k,1)=c(21)
  f2(!k,2)=c(22)
  f2(!k,3)=0
  scalar s21=eql2.@r2
  scalar s22=eql2.@rbar2
  scalar s23=eql2.@aic
  scalar s24=eql2.@schwarz
  ss2(!k,1)=s21
  ss2(!k,2)=s22
  ss2(!k,3)=s23
  ss2(!k,4)=s24
if  s21> s11 then
  !n11=!n11+1
  endif
if  s22> s12 then
  !n12=!n12+1
  endif
if  s23> s13 then
  !n13=!n13+1
  endif
if  s24> s14 then
  !n14=!n14+1
  endif
  p(1,1)=!n11
  p(1,2)=!n12
  p(1,3)=!n13
  p(1,4)=!n14

series ser01=!b1+!b2*x1+1.5*x2+u
  equation eql3.ls ser01=c(31)+c(32) *x1+c(33)*x2
  f3(!k,1)=c(31)
  f3(!k,2)=c(32)
  f3(!k,3)=c(33)
  scalar s31=eql3.@r2
  scalar s32=eql3.@rbar2
  scalar s33=eql3.@aic
  scalar s34=eql3.@schwarz
  ss3(!k,1)=s31
  ss3(!k,2)=s32
  ss3(!k,3)=s33
  ss3(!k,4)=s34
if  s31> s11 then
  !n21=!n21+1
  endif
if  s32> s12 then
  !n22=!n22+1
  endif
if  s33> s13 then
  !n23=!n23+1
  endif
if  s34> s14 then
  !n24=!n24+1
  endif
  p(2,1)=!n21
  p(2,2)=!n22
  p(2,3)=!n23
  p(2,4)=!n24
  series ser01=!b1+!b2*x1+0.1*x2+u
  equation eql4.ls ser01=c(41)+c(42) *x1+c(43)*x2
  f4(!k,1)=c(41)
  f4(!k,2)=c(42)
  f4(!k,3)=c(43)
  scalar s41=eql4.@r2
  scalar s42=eql4.@rbar2
  scalar s43=eql4.@aic
  scalar s44=eql4.@schwarz
  ss4(!k,1)=s41
  ss4(!k,2)=s42
  ss4(!k,3)=s43
  ss4(!k,4)=s44
if  s41> s11 then
  !n31=!n31+1
  endif
if  s42> s12 then
  !n32=!n32+1
  endif
if  s43> s13 then
  !n33=!n33+1
  endif
if  s44> s14 then
  !n34=!n34+1
  endif
  p(3,1)=!n31
  p(3,2)=!n32
  p(3,3)=!n33
  p(3,4)=!n34
  series ser01=!b1+!b2*x1+0.001*x2+u
  equation eql5.ls ser01=c(51)+c(52) *x1+c(53)*x2
  f5(!k,1)=c(51)
  f5(!k,2)=c(52)
  f5(!k,3)=c(53)
  scalar s51=eql5.@r2
  scalar s52=eql5.@rbar2
  scalar s53=eql5.@aic
  scalar s54=eql5.@schwarz
  ss5(!k,1)=s51
  ss5(!k,2)=s52
  ss5(!k,3)=s53
  ss5(!k,4)=s54
if  s51> s11 then
  !n41=!n41+1
  endif
if  s52> s12 then
  !n42=!n42+1
  endif
if  s53> s13 then
  !n43=!n43+1
  endif
if  s54> s14 then
  !n44=!n44+1
  endif
  p(4,1)=!n41
  p(4,2)=!n42
  p(4,3)=!n43
  p(4,4)=!n44

  next
  show f1
  show f2
  show f3
  show f4
  show f5
  show ss1
  show ss2
  show ss3
  show ss4
  show ss5
  show  p

二维码

扫码加我 拉你入群

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

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

全部回复
2014-4-2 23:32:58
浅水东东 发表于 2014-4-2 18:45
想要比较矩阵与矩阵列数值,具体的代码应该怎么写?模型系数不同是否AIC,SC数值是一样的?我所研究的问题是 ...
牛人 看不懂
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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