www.gusucode.com > bigdata 工具箱 matlab源码程序 > bigdata/@tall/dateshift.m
function tc = dateshift(tt,varargin) %DATESHIFT Shift tall datetimes or generate sequences according to a calendar rule. % Supported syntaxes for tall DATETIME: % T2 = DATESHIFT(T,'start',UNIT) % T2 = DATESHIFT(T,'end',UNIT) % T2 = DATESHIFT(T,'dayofweek',DOW) % T2 = DATESHIFT(T,...,RULE) % % See also DATETIME/DATESHIFT. % Copyright 2015-2016 The MathWorks, Inc. narginchk(3,4); checkNotTall(upper(mfilename), 1, varargin{1:2}); tt = tall.validateType(tt, mfilename, {'datetime'}, 1); if nargin > 3 && istall(varargin{3}) tallrule = tall.validateType(varargin{3}, mfilename, {'numeric'}, 3); tc = elementfun(@(x, y) dateshift(x, varargin{1:2}, y), tt, tallrule); % Here, we need to be cautious about the size information in the adaptor tc.Adaptor = resetSizeInformation(matlab.bigdata.internal.adaptors.getAdaptor(tt)); else tc = elementfun(@(x) dateshift(x, varargin{:}), tt); % In this case, only 'tt' was tall, so we must preserve all attributes of tt. tc.Adaptor = tt.Adaptor; end end