isbetween
日付と時刻の区間内の要素を判別
説明
tf = isbetween(
は、t
,tlower
,tupper
)t
の対応する要素が tlower
と tupper
の対応する要素によって指定された閉区間内にある datetime
値または duration
値である位置に logical 1
(true) を含む配列を返します。出力 tf
は、t
のどの要素が以下を満たしているかを示します。
tlower <= t & t <= tupper
t
、tlower
、および tupper
は、同じサイズであるか、互換性のあるサイズでなければなりません。入力配列のサイズに互換性がある場合、その配列は互いに一致するように暗黙的に拡張されます。たとえば、t
、tlower
、または tupper
のうちの 1 つがスカラーである場合、そのスカラーは他の配列の各要素と比較されます。また、方向の異なるベクトル (行ベクトルと列ベクトル) は、行列となるよう暗黙的に拡張されます。
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
配列、string、または文字ベクトルを使用できます。ここでは、tlower
は datetime
配列で、tupper
は string スカラーです。
datetime
値の配列を作成します。最初に 1 つの datetime
値 tlower
から始め、関数 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
tlower
と tupper
を境界とする閉区間内にある 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
入力引数
t
— 入力の日付と時刻
datetime
配列 | duration
配列 | 文字ベクトル | 文字ベクトルの cell 配列 | string 配列
入力の日付と時刻。datetime
配列、duration
配列、文字ベクトル、文字ベクトルの cell 配列、または string 配列として指定します。文字ベクトルと string は、日付と時刻を表すように書式設定しなければなりません。
tlower
— 日付と時刻の区間の下限
datetime
配列 | duration
配列 | 文字ベクトル | 文字ベクトルの cell 配列 | string 配列
日付と時刻の区間の下限。datetime
配列、duration
配列、文字ベクトル、文字ベクトルの cell 配列、または string 配列として指定します。文字ベクトルと string は、日付と時刻を表すように書式設定しなければなりません。
tupper
— 日付と時刻の区間の上限
datetime
配列 | duration
配列 | 文字ベクトル | 文字ベクトルの cell 配列 | string 配列
日付と時刻の区間の上限。datetime
配列、duration
配列、文字ベクトル、文字ベクトルの cell 配列、または string 配列として指定します。文字ベクトルと string は、日付と時刻を表すように書式設定しなければなりません。
intervalType
— 時間範囲の区間のタイプ
'closed'
(既定値) | 'open'
| 'openleft'
| 'openright'
| 'closedright'
| 'closedleft'
時間範囲の区間のタイプ。'open'
、'closed'
、'openleft'
、'openright'
、'closedright'
、または 'closedleft'
として指定します。次の表で、時間範囲の区間のタイプについて説明します。
区間のタイプ | 説明 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
拡張機能
tall 配列
メモリの許容量を超えるような多数の行を含む配列を計算します。
スレッドベースの環境
MATLAB® の backgroundPool
を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool
を使用してコードを高速化します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
分散配列
Parallel Computing Toolbox™ を使用して、クラスターの結合メモリ上で大きなアレイを分割します。
この関数は分散配列を完全にサポートしています。詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2014b で導入R2020b: 暗黙的な拡張の変更は datetime
配列と duration
配列に影響
R2020b 以降、引数が datetime
配列または duration
配列である場合、isbetween
は暗黙的な拡張をサポートします。R2020a と R2016b の間は、暗黙的な拡張は数値データ型および string データ型でのみサポートされていました。
参考
ismember
| le
| gt
| lt
| ge
| datetime
| duration
| seconds
| caldays
| containsrange
| overlapsrange
| withinrange
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)