国内关于Eviews编程的讲解比较少,在外网查了一些资料,最终通过搜集、分析、纠正和编写,总算得到一段小小的代码,希望能帮到和我遇到一样问题的朋友。代码写得很粗浅,但实用,菜鸟一枚,望诸君莫笑。
group tmp * ' 该行代码在command窗口运行,能够得到时间序列的group文件
!counter=1'该行及以后的代码都在Program文件里统一运行
for !i=1 to tmp.@count-1'不需要group最后一列的residual,故此处-1
%sname = tmp.@seriesname(!counter) ' Variable name
{%sname}.x12(mode=a) ' seasonally adjust series is {%sname}_sa,想要Additive模式的保留(mode=a),想用Multiplicative模式的去掉(mode=a),具体括号里用什么模式,可以自己算一个季节调整的数据,第二行结果里会有显示(如图1)
'如果想把原来的序列删掉,只保留季节调整后的变量,并将季节调整后变量的名字去掉_sa后缀,那么加上下面这一段
delete %sname
series {%sname}
{%sname}={%sname}_sa
delete {%sname}_sa
!counter=!counter+1
next