Updated dynSeries class' constructor.
parent
eb25a54ee9
commit
2bb66c38f0
|
@ -84,7 +84,7 @@ ts.vobs = 0;
|
||||||
ts.name = {};
|
ts.name = {};
|
||||||
ts.tex = {};
|
ts.tex = {};
|
||||||
ts.freq = [];
|
ts.freq = [];
|
||||||
ts.init = dynDate();
|
ts.init = dates();
|
||||||
ts.time = dates();
|
ts.time = dates();
|
||||||
|
|
||||||
ts = class(ts,'dynSeries');
|
ts = class(ts,'dynSeries');
|
||||||
|
@ -94,13 +94,16 @@ switch nargin
|
||||||
% Create an empty dynSeries object.
|
% Create an empty dynSeries object.
|
||||||
return
|
return
|
||||||
case 1
|
case 1
|
||||||
if isa(varargin{1},'dynDate')
|
if isa(varargin{1},'dates') && isequal(length(varargin{1}),1)
|
||||||
if isempty(varargin{1})
|
switch length(varargin{1})
|
||||||
error(['dynSeries:: ' inputname(1) ' (identified as a dynDate object) must be non empty!'])
|
case 0
|
||||||
else
|
error(['dynSeries::dynSeries: ' inputname(1) ' (identified as a dates object) must be non empty!'])
|
||||||
|
case 1
|
||||||
% Create an empty dynSeries object with an initial date.
|
% Create an empty dynSeries object with an initial date.
|
||||||
ts.init = varargin{1};
|
ts.init = varargin{1};
|
||||||
ts.freq = varargin{1}.freq;
|
ts.freq = varargin{1}.freq;
|
||||||
|
otherwise
|
||||||
|
error(['dynSeries::dynSeries: ' inputname(1) ' (identified as a dates object) must have only one element!'])
|
||||||
end
|
end
|
||||||
return
|
return
|
||||||
elseif ischar(varargin{1})
|
elseif ischar(varargin{1})
|
||||||
|
@ -145,7 +148,7 @@ switch nargin
|
||||||
ts.data = varargin{1};
|
ts.data = varargin{1};
|
||||||
[ts.nobs, ts.vobs] = size(ts.data);
|
[ts.nobs, ts.vobs] = size(ts.data);
|
||||||
ts.freq = 1;
|
ts.freq = 1;
|
||||||
ts.init = dynDate(1);
|
ts.init = dates(1,1);
|
||||||
ts.name = default_name(ts.vobs);
|
ts.name = default_name(ts.vobs);
|
||||||
ts.tex = name2tex(ts.name);
|
ts.tex = name2tex(ts.name);
|
||||||
end
|
end
|
||||||
|
@ -167,22 +170,22 @@ switch nargin
|
||||||
ts.nobs = size(a,1);
|
ts.nobs = size(a,1);
|
||||||
ts.vobs = size(a,2);
|
ts.vobs = size(a,2);
|
||||||
% Get the first date and set the frequency.
|
% Get the first date and set the frequency.
|
||||||
if ~isempty(b)
|
if isempty(b)
|
||||||
if ischar(b)% Weekly, Monthly or Quaterly data.
|
ts.freq = 1;
|
||||||
ts.init = dynDate(b);
|
ts.init = dates(1,1);
|
||||||
|
else
|
||||||
|
if isdate(b)% Weekly, Monthly, Quaterly or Annual data.
|
||||||
|
ts.init = dates(b);
|
||||||
ts.freq = ts.init.freq;
|
ts.freq = ts.init.freq;
|
||||||
elseif isa(b,'dynDate') && ~isempty(b)
|
elseif isa(b,'dates') && isequal(length(b),1)
|
||||||
ts.freq = b.freq;
|
ts.freq = b.freq;
|
||||||
ts.init = b;
|
ts.init = b;
|
||||||
elseif isnumeric(b) && isreal(b) && isint(b)
|
elseif isnumeric(b) && isscalar(b) && isint(b) % Yearly data.
|
||||||
ts.freq = 1;
|
ts.freq = 1;
|
||||||
ts.init = dynDate(b);
|
ts.init = dates([num2str(b) 'Y']);
|
||||||
else
|
else
|
||||||
error('dynSeries::dynSeries: Wrong calling sequence!');
|
error('dynSeries::dynSeries: Wrong calling sequence!');
|
||||||
end
|
end
|
||||||
else% If b is empty.
|
|
||||||
ts.freq = 1;
|
|
||||||
ts.init = dynDate(1);
|
|
||||||
end
|
end
|
||||||
% Get the names of the variables.
|
% Get the names of the variables.
|
||||||
if ~isempty(c)
|
if ~isempty(c)
|
||||||
|
@ -229,7 +232,7 @@ ts.time = ts.init:ts.init+(ts.nobs-1);
|
||||||
%$ t = zeros(4,1);
|
%$ t = zeros(4,1);
|
||||||
%$
|
%$
|
||||||
%$ try
|
%$ try
|
||||||
%$ aa = dynDate('1938M11');
|
%$ aa = dates('1938M11');
|
||||||
%$ ts = dynSeries(aa);
|
%$ ts = dynSeries(aa);
|
||||||
%$ t(1) = 1;
|
%$ t(1) = 1;
|
||||||
%$ catch
|
%$ catch
|
||||||
|
|
Loading…
Reference in New Issue