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-Aug-2018
   21-Aug-2018
   22-Aug-2018

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-Aug-2018 18:29:58   21-Sep-2018 18:29:58   21-Oct-2018 18:29:58

Column 4

   21-Nov-2018 18:29:58

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

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

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

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

свернуть все

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

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

  • годы

  • 'quarters'

  • 'months'

  • 'weeks'

  • дни

  • Время

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

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

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

Пример: {'Годы', 'четверти'}

Типы данных: char | ячейка | строка

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

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

свернуть все

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

Советы

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

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

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

| | |

Введенный в R2014b

Была ли эта тема полезной?