Main Content

isbetween

日付と時刻の区間内の要素を判別

説明

tf = isbetween(t,tlower,tupper) は、t の対応する要素が tlowertupper の対応する要素によって指定された閉区間内にある datetime 値または duration 値である位置に logical 1 (true) を含む配列を返します。出力 tf は、t のどの要素が以下を満たしているかを示します。

tlower <= t & t <= tupper

ttlower、および tupper は、同じサイズであるか、互換性のあるサイズでなければなりません。入力配列のサイズに互換性がある場合、その配列は互いに一致するように暗黙的に拡張されます。たとえば、ttlower、または tupper のうちの 1 つがスカラーである場合、そのスカラーは他の配列の各要素と比較されます。また、方向の異なるベクトル (行ベクトルと列ベクトル) は、行列となるよう暗黙的に拡張されます。

tf = isbetween(t,tlower,tupper,intervalType) は、t の要素が intervalType で指定されたタイプの区間内にあるかどうかを判別します。たとえば、intervalType'open' の場合、isbetweent のどの要素が条件 tlower < t & t < tupper を満たしているかを判別します。

すべて折りたたむ

日付の下限と上限を指定します。

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

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

tlowertupper には、datetime 配列、duration 配列、string、または文字ベクトルを使用できます。ここでは、tlowerdatetime 配列で、tupper は string スカラーです。

datetime 値の配列を作成します。最初に 1 つの datetimetlower から始め、関数 caldays を使用してカレンダー日の配列を追加できます。その結果、2 日間隔の 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

tlowertupper を境界とする閉区間内にある datetime 値を判定します。

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

   1   1   1   0   0

区間内にある日付を表示するには、tf を論理インデックスとして使用して t にインデックスを付けます。

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
    1 sec    2 sec    3 sec    4 sec    5 sec    6 sec    7 sec    8 sec    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

最初の要素を tlower と等しくして datetime 値の配列を作成します。

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

開区間内にある日付を表示するには、tf を論理インデックスとして使用して t にインデックスを付けます。

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 配列、文字ベクトル、文字ベクトルの cell 配列、または string 配列として指定します。文字ベクトルと string は、日付と時刻を表すように書式設定しなければなりません。

日付と時刻の区間の下限。datetime 配列、duration 配列、文字ベクトル、文字ベクトルの cell 配列、または string 配列として指定します。文字ベクトルと string は、日付と時刻を表すように書式設定しなければなりません。

日付と時刻の区間の上限。datetime 配列、duration 配列、文字ベクトル、文字ベクトルの cell 配列、または string 配列として指定します。文字ベクトルと string は、日付と時刻を表すように書式設定しなければなりません。

時間範囲の区間のタイプ。'open''closed''openleft''openright''closedright'、または 'closedleft' として指定します。次の表で、時間範囲の区間のタイプについて説明します。

区間のタイプ

説明

'open'

tlower < t かつ t < tupper の開区間を満たす値を選択します。

'closed' (既定)

tlower <= t かつ t <= tupper の閉区間を満たす値を選択します。

'openleft'

tlower < t かつ t <= tupper の半開区間を満たす値を選択します。

'openright'

tlower <= t かつ t < tupper の半開区間を満たす値を選択します。

'closedright'

'openleft' と等価です。

'closedleft'

'openright' と等価です。

拡張機能

バージョン履歴

R2014b で導入

すべて展開する