标签:
杂谈 |
分类: MSN搬家 |
%
把同比、环比时间序列(例如PPI,PPI等)转换成定基指数序列的函数。
% 寇文红,2009年5月26日于隆安公寓。10月27日修改
% 用途:
% 国家统计局公布的CPI、PPI、工业增加值等都是同比月度序列(有时有环比),没有原始绝对量数据。
%
这些同比序列是用原始绝对量序列直接计算来的,而原始数据中包含了趋势性、周期性、季节性、不规则性(其中包括异常值)等四个部分。
% 因此这些同比序列:
%(1)依赖于过去12月的数据。隐含假定每年的季节模式不变。这是不对的。
%(2)包含移动假日效应(例如春节效应)、季节性、以及每月交易日数目不同带来的影响。
%(3)容易掩盖趋势变化,用这种数据来观察经济趋势转折点不准确,一般要趋势变动几个月后到半年才能看出来,错过时机。
% 由于不能对同比序列进行季节调整,而应该对原始序列进行季节调整,但是我国的原始序列不可得。因此
% 本程序的目的是把同比(环比)序列转化成定基指数序列,然后对其进行季节性调整。
% 转换方法:
%
把环比数据分四种情况:A,有齐全的环比;B,有环比,有缺失,但至少有一个周期齐全;C,有环比但没有一个周期齐全;D,没有环比。
% 把同比数据分两种情况:a,有同比(不管是否齐全);b,无同比数据。
% 这样一共有八种组合,可以分出三种转换方法:
%(1)Aa,Ba,有环比,环比数据至少有一个周期(例如2000年)是齐全的。另外还有同比(不管同比是否齐全)。这在中国最常见,例如CPI和PPI数据。
%
%
%
%
%
%(2)Ca,Da,有环比数据,但每个周期都不齐全,等同于没有环比。有同比数据(不管是否齐全)。
%
%
%(3)Aa,Ab,有环比数据,且各月数据齐全,无缺失值。这时可令第base个数据为100,再依次推出以后各月数据。
%
%
%
%(4)其他可能性Bb,Cb,Db:没有同比也没有齐全的环比,这时候无法转换。
% 用户输入:
% 在调用本函数之前,需要用户设定的参数有6个:
% (1)时间date
% (2)环比序列mom
% (3)同比序列yoy,如果没有可以设定yoy=[];
%
(4)per,如果取0,表示原始的yoy和mom已经是百分比,只要加1即可;如果不取0,则表示原始yoy和mom是百分点数,需要除以100换算成百分比再加1。
%
% (5)approach,可以等于1,2,3,对应上述三种算法。用户必须根据自己数据的情况来选择approach的值。
%
(6)base,表示把第base个观测所在月份作为基期(=100),用户必须根据自己数据的情况来选择base的值。原始数据最好从某年1月开始,base对应某年的1月份。
function
index=function_to_switch_yoy_and_mom_ts_to_common_base_index(date,mom,yoy,per,approach,base)
if per==0
else
end
obs=length(date);
if base>obs
else
end
index=zeros(obs,1);
if approach==1
elseif approach==2