⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qtr2yr.m

📁 计量工具箱
💻 M
字号:
function yyr = qtr2yr(yqtr,flag)% PURPOSE: converts quarterly time-series to annual averages%---------------------------------------------------% USAGE:  yyr = qtr2yr(yqtr)% where:  yqtr = quarterly time series vector or matrix (nobs x k)%         flag = 0 for averages (default) and 1 for sums%---------------------------------------------------% RETURNS: yyr = annual time-series vector or matrix%                 [floor(nobs/4) + 1] in length by k columns%---------------------------------------------------% NOTES:  the last observation is the actual quarter or%         the average (sum) of the last 2 or 3 quarters in cases where%         nobs/4 has a remainder               %---------------------------------------------------% written by:% James P. LeSage, Dept of Economics% University of Toledo% 2801 W. Bancroft St,% Toledo, OH 43606% jlesage@spatial-econometrics.com[nobs qvar] = size(yqtr);denom = ones(1,qvar)*4.0;robs = rem(nobs,4);if nargin == 1flag = 0;end;switch robscase 0cnt = 1;yyr = zeros(nobs/4,qvar);for i=1:4:nobs-3if flag == 0yyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:))./denom;elseyyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:));end;cnt = cnt+1;end;case 1cnt = 1;qobs = floor(nobs/4) + 1;yyr = zeros(qobs,qvar);for i=1:4:nobs-3if flag == 0yyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:))./denom;elseyyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:));end;cnt = cnt+1;end;yyr(cnt,:) = yqtr(nobs,:);case 2cnt = 1;qobs = floor(nobs/4) + 1;yyr = zeros(qobs,qvar);for i=1:4:nobs-3if flag == 0yyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:))./denom;elseyyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:));end;cnt = cnt+1;end;if flag == 0yyr(cnt,:) = (yqtr(nobs-1,:) + yqtr(nobs,:))/2;elseyyr(cnt,:) = (yqtr(nobs-1,:)+yqtr(nobs,:));end;case 3cnt = 1;qobs = floor(nobs/4) + 1;yyr = zeros(qobs,qvar);for i=1:4:nobs-3if flag == 0yyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:))./denom;elseyyr(cnt,:) = (yqtr(i,:) + yqtr(i+1,:) + yqtr(i+2,:) + yqtr(i+3,:));end;cnt = cnt+1;end;if flag == 0yyr(cnt,:) = (yqtr(nobs-1,:) + yqtr(nobs,:) + yqtr(nobs,:))/3;elseyyr(cnt,:) = (yqtr(nobs-1,:)+yqtr(nobs,:)+yqtr(nobs,:));end;end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -