isbetween

Определите элементы в интервале даты и времени

Описание

пример

tf = isbetween(t,tlower,tupper) возвращает массив, содержащий логический 1 (TRUE), где соответствующий элемент t datetime или duration значение, которое находится в закрытом интервале, заданном соответствующими элементами tlower и tupper. Выход tf указывает который элементы t удовлетворите:

tlower <= t & t <= tupper

Размеры ttlower , и tupper должен быть то же самое или быть совместимым. Если размеры входных массивов совместимы, то массивы неявно расширяются, чтобы совпадать друг с другом. Например, если один из ttlower , или tupper скаляр, затем скаляр сравнивается с каждым элементом других массивов. Кроме того, векторы с различными ориентациями (векторы-строки и вектор-столбцы) неявно расширяются, чтобы сформировать матрицу.

пример

tf = isbetween(t,tlower,tupper,intervalType) определяет если элементы t в типе интервала, заданного intervalType. Например, если intervalType 'open'то isbetween определяет который элементы t удовлетворите tlower < t & t < tupper как условие.

Примеры

свернуть все

Задайте нижнюю границу и верхнюю границу для дат.

tlower = datetime(2021,05,16)
tlower = datetime
   16-May-2021

tupper = "2021-05-23"
tupper = 
"2021-05-23"

tlower и tupper может быть datetime массивы, duration массивы, строки или векторы символов. Здесь, tlower datetime массив и tupper строковый скаляр.

Создайте массив datetime значения. Можно начать с одного datetime значение, tlower, и добавьте массив календарных дней к нему при помощи caldays функция. Результатом является массив datetime значения, расположенные с интервалами на расстоянии в два дня.

t = tlower + caldays(2:2:10)
t = 1x5 datetime
   18-May-2021   20-May-2021   22-May-2021   24-May-2021   26-May-2021

Определите который datetime значения лежат в закрытом интервале, ограниченном tlower и tupper.

tf = isbetween(t,tlower,tupper)
tf = 1x5 logical array

   1   1   1   0   0

Отобразить даты, которые лежат в интервале, индексе в t использование tf как логические индексы.

t(tf)
ans = 1x3 datetime
   18-May-2021   20-May-2021   22-May-2021

Задайте верхние и нижние границы для интервала, тестирующего duration значения с помощью seconds. seconds функция преобразует конкретное количество секунд в duration массив, отформатированный, чтобы отобразить прошедшее время в секундах.

tlower = seconds(3)
tlower = duration
   3 sec

tupper = seconds(9)
tupper = duration
   9 sec

Создайте массив duration значения.

t = seconds(1:10)
t = 1x10 duration
Columns 1 through 8

    1 sec    2 sec    3 sec    4 sec    5 sec    6 sec    7 sec    8 sec

Columns 9 through 10

    9 sec   10 sec

Определите который элементы t в интервале. Затем отобразите их.

tf = isbetween(t,tlower,tupper);
t(tf)
ans = 1x7 duration
   3 sec   4 sec   5 sec   6 sec   7 sec   8 sec   9 sec

Задайте верхние и нижние границы для интервала, тестирующего даты.

tlower = datetime(2021,5,16)
tlower = datetime
   16-May-2021

tupper = datetime(2021,5,23)
tupper = datetime
   23-May-2021

Создайте массив datetime значения, с первым элементом равняются tlower.

t = tlower + caldays(0:2:8)
t = 1x5 datetime
   16-May-2021   18-May-2021   20-May-2021   22-May-2021   24-May-2021

Определите, какие даты происходят в открытом интервале, tlower < t & t < tupper.

tf = isbetween(t,tlower,tupper,'open')
tf = 1x5 logical array

   0   1   1   1   0

Чтобы отобразить даты в открытом интервале, индексируйте в t использование tf как логические индексы.

t(tf)
ans = 1x3 datetime
   18-May-2021   20-May-2021   22-May-2021

Определите, какие даты происходят в полуоткрытом интервале, tlower <= t & t < tupper. Отобразите даты.

tf = isbetween(t,tlower,tupper,'openright');
t(tf)
ans = 1x4 datetime
   16-May-2021   18-May-2021   20-May-2021   22-May-2021

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

свернуть все

Введите дату и время в виде datetime массив, duration массив, вектор символов, массив ячеек из символьных векторов или массив строк. Векторы символов и строки должны быть отформатированы, чтобы представлять даты и времена.

Нижняя граница интервала даты и времени в виде datetime массив, duration массив, вектор символов, массив ячеек из символьных векторов или массив строк. Векторы символов и строки должны быть отформатированы, чтобы представлять даты и времена.

Верхняя граница интервала даты и времени в виде datetime массив, duration массив, вектор символов, массив ячеек из символьных векторов или массив строк. Векторы символов и строки должны быть отформатированы, чтобы представлять даты и времена.

Тип интервала области значений времени в виде 'open', 'closed', 'openleft', 'openright', 'closedright', или 'closedleft'. Таблица описывает типы интервалов области значений времени.

IntervalType

Описание

'open'

Выберите значения, которые удовлетворяют открытому интервалу tlower < t и t < tupper.

'closed' (значение по умолчанию)

Выберите значения, которые удовлетворяют закрытому интервалу tlower <= t и t <= tupper.

'openleft'

Выберите значения, которые удовлетворяют полуоткрытому интервалу tlower < t и t <= tupper.

'openright' (значение по умолчанию)

Выберите значения, которые удовлетворяют полуоткрытому интервалу tlower <= t и t < tupper.

'closedright'

Эквивалентный 'openleft'.

'closedleft'

Эквивалентный 'openright'.

Вопросы совместимости

развернуть все

Поведение изменяется в R2020b

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

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

| | | | | | | |

Введенный в R2014b