caldiff

Календарная математика последовательные различия

Синтаксис

dt = caldiff(t)
dt = caldiff(t,components)
dt = caldiff(t,components,dim)

Описание

пример

dt = caldiff(t) вычисляет разницу во времени между смежными значениями datetime в t с точки зрения календарных лет компонентов, месяцев, дней и времени. caldiff вычисляет различия вдоль первого измерения массива, размер которого не равняется 1.

  • Если t является вектором длины m, то dt = caldiff(t) возвращает вектор длины m-1. Элементы dt являются различиями между смежными элементами t.

    dt = [between(t(1),t(2)), between(t(2),t(3)),..., between(t(m-1),t(m))]
  • Если t является невекторный p-by-m матрица, то dt = caldiff(t) возвращает матрицу размера (p-1)-by-m, чьи элементы являются различиями между строками t.

    dt(:,I) = [between(t(1,I),t(2,I), between(t(2,I),t(3,I)), ..., 
    between(t(p-1,I),t(p,I))]

пример

dt = caldiff(t,components) находит различия между последовательным datetimes в t с точки зрения заданного календаря или компонентов времени.

dt = caldiff(t,components,dim) находит различия между последовательным datetimes по измерению заданными dim.

Примеры

свернуть все

Создайте массив datetime и затем вычислите различия между значениями с точки зрения календарных компонентов.

t = [datetime('yesterday');datetime('today');datetime('tomorrow')]
t = 3x1 datetime array
   20-Feb-2019
   21-Feb-2019
   22-Feb-2019

D = caldiff(t)
D = 2x1 calendarDuration array
   1d
   1d

Создайте массив datetime и затем вычислите различия между значениями с точки зрения дней.

t = datetime('now') + calmonths(0:3)
t = 1x4 datetime array
Columns 1 through 3

   21-Feb-2019 20:38:41   21-Mar-2019 20:38:41   21-Apr-2019 20:38:41

Column 4

   21-May-2019 20:38:41

D = caldiff(t,'days')
D = 1x3 calendarDuration array
   28d   31d   30d

Компьютер различия между значениями datetime с точки зрения недель и дней.

D = caldiff(t,{'weeks','days'})
D = 1x3 calendarDuration array
      4w   4w 3d   4w 2d

Входные параметры

свернуть все

Введите дату и время, заданную как массив datetime.

Календарь или компоненты времени, заданные как один из следующих векторов символов, или массив ячеек или массив строк, содержащий один или несколько из этих значений:

  • 'years'

  • 'quarters'

  • 'months'

  • 'weeks'

  • 'days'

  • 'time'

За исключением 'time', вышеупомянутые компоненты являются гибкими отрезками времени. Например, один месяц представляет различный отрезок времени, когда добавлено к datetime в январе чем тогда, когда добавлено к datetime в феврале.

caldiff работает с календарем или компонентами времени в порядке убывания, начиная с самого большого компонента.

В целом t(2:m) не равен t(1:m-1) + dt, если вы не включаете 'time' в components.

Пример: {'years','quarters'}

Типы данных: char | cell | string

Размерность, которая задает направление расчета, заданная как положительное целое число. Если никакое значение не задано, значением по умолчанию является первое измерение массива, размер которого не равняется 1.

Выходные аргументы

свернуть все

Массив различия, возвращенный как скаляр, вектор, матрица или многомерный массив calendarDuration.

Советы

  • Чтобы вычислить последовательные различия между datetimes в t1 и t2 как точные модули фиксированной длины часов, минуты и секунды, используют diff(t).

Расширенные возможности

Смотрите также

| | |

Введенный в R2014b