このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
overlapsrange
timetable の行時間が指定した時間範囲とオーバーラップするかどうかを判別
構文
説明
は、tf
= overlapsrange(TT
,rangeOfTimes
)TT
の行時間の範囲が rangeOfTimes
で指定される時間範囲と交差する場合、1
(true
) を返します。それ以外の場合は 0
(false
) を返します。
TT
の行時間の範囲は、最小行時間と最大行時間で決まります。
例
行時間の範囲が 0 ~ 0.4 秒の timetable を作成します。
Intensity = [100;98.7;95.2;101.4;99.1];
TT = timetable(Intensity,'TimeStep',seconds(0.1))
TT=5×1 timetable
Time Intensity
_______ _________
0 sec 100
0.1 sec 98.7
0.2 sec 95.2
0.3 sec 101.4
0.4 sec 99.1
範囲が 0.25 ~ 1.0 秒の time range オブジェクトを作成します。オブジェクトを作成するには、関数 timerange
を使用します。入力は、関数 seconds
を使用して作成できる期間です。
rangeOfTimes = timerange(seconds(0.25),seconds(1.0))
rangeOfTimes = timetable timerange subscript: Select timetable rows with times in the half-open interval: Starting at, including: 0.25 sec Ending at, but excluding: 1 sec See Select Times in Timetable.
TT
の行時間が rangeOfTimes
で指定される範囲とオーバーラップするかどうかを判別します。
tf = overlapsrange(TT,rangeOfTimes)
tf = logical
1
範囲が 0.7 ~ 1.0 秒の別の time range オブジェクトを作成します。関数 overlapsrange
は 0 を返します。これは rangeOfTimes
が TT
の時間範囲の完全な外側にあるためです。
rangeOfTimes = timerange(seconds(0.7),seconds(1.0))
rangeOfTimes = timetable timerange subscript: Select timetable rows with times in the half-open interval: Starting at, including: 0.7 sec Ending at, but excluding: 1 sec See Select Times in Timetable.
tf = overlapsrange(TT,rangeOfTimes)
tf = logical
0
時間範囲が異なる 2 つの timetable を作成します。timetable は、さまざまな変数や異なる行数を持つこともできます。
Intensity = [100;98.7;95.2;101.4;99.1];
TT1 = timetable(Intensity,'TimeStep',seconds(0.1))
TT1=5×1 timetable
Time Intensity
_______ _________
0 sec 100
0.1 sec 98.7
0.2 sec 95.2
0.3 sec 101.4
0.4 sec 99.1
Readings = [74;83;99]; TT2 = timetable(Readings,'TimeStep',seconds(0.5),'StartTime',seconds(0.25))
TT2=3×1 timetable
Time Readings
________ ________
0.25 sec 74
0.75 sec 83
1.25 sec 99
TT1
の行時間の範囲が TT2
の行時間の範囲とオーバーラップするかを判別します。
tf = overlapsrange(TT1,TT2)
tf = logical
1
各月初頭と半ばの物価を含む timetable を作成します。
Time = datetime({'2018-01-01';'2018-01-15';'2018-02-01';'2018-02-15'; '2018-03-01';'2018-03-15'}); Price = randi([85 110],6,1); TT = timetable(Time,Price)
TT=6×1 timetable
Time Price
___________ _____
01-Jan-2018 106
15-Jan-2018 108
01-Feb-2018 88
15-Feb-2018 108
01-Mar-2018 101
15-Mar-2018 87
関数 datetime
を使用して、ある時点を指定します。ここでは 2018 年 2 月 1 日午前 0 時とします。
oneTime = datetime('2018-02-01')
oneTime = datetime
01-Feb-2018
TT
の行時間の範囲に oneTime
が含まれるかどうかを判別します。
tf = overlapsrange(TT,oneTime)
tf = logical
1
oneTime
は、TT
の特定の行時間と一致する必要はありません。oneTime
が TT
の最小行時間と最大行時間の間の時間であれば、overlapsrange
は 1 を返します。
oneTime = datetime('2018-02-28 09:23:45')
oneTime = datetime
28-Feb-2018 09:23:45
tf = overlapsrange(TT,oneTime)
tf = logical
1
timetable を作成します。
Intensity = [100;98.7;95.2;101.4;99.1];
TT = timetable(Intensity,'TimeStep',seconds(0.1))
TT=5×1 timetable
Time Intensity
_______ _________
0 sec 100
0.1 sec 98.7
0.2 sec 95.2
0.3 sec 101.4
0.4 sec 99.1
時間範囲を指定します。次に、その時間範囲内にある TT
の行を判別します。2 番目の出力引数 whichRows
は、要素が TT
の行に対応する logical 配列です。行時間が時間範囲内にある各行には 1
が、行時間が時間範囲内にない各行には 0
が含まれます。
rangeOfTimes = timerange(seconds(0.1),seconds(0.35)); [tf,whichRows] = overlapsrange(TT,rangeOfTimes)
tf = logical
1
whichRows = 5×1 logical array
0
1
1
1
0
時間範囲内の行にアクセスするには、whichRows
を使用して TT
にインデックスを付けます。
TT2 = TT(whichRows,:)
TT2=3×1 timetable
Time Intensity
_______ _________
0.1 sec 98.7
0.2 sec 95.2
0.3 sec 101.4
入力引数
入力 timetable。TT
の最小行時間と最大行時間によって時間の範囲が決まります。
時間範囲。time range オブジェクトまたは timetable として指定します。
rangeOfTimes
を time range オブジェクトとして指定する場合は、関数timerange
を使用して時間範囲を作成します。timerange
への入力として範囲の開始時間と終了時間を明示的に指定します。入力 timetable
TT
にイベント テーブルが付加されている場合は、イベント フィルターを使用する time range オブジェクトを指定してoverlapsrange
を呼び出すことができます。イベント フィルターを使用した時間範囲の指定の詳細については、eventfilter
を参照してください。 (R2023b 以降)
rangeOfTimes
を timetable として指定する場合は、範囲の開始と終了を明示的に指定する必要はありません。overlapsrange
により、timetable の最小行時間と最大行時間から自動的に取得されます。
単一の時間。datetime
スカラーまたは duration
スカラーとして指定します。
出力引数
true または false。TT
の行時間の範囲が rangeOfTimes
で指定された時間範囲または oneTime
で指定された時点と交わる場合は logical 1
、そうでない場合は logical 0
として返されます。
指定された時間範囲内の行のインデックス。logical 配列として返されます。whichRows
を使用して TT
にインデックスを付けることができます。
たとえば、次のコードでは、overlapsrange
の 2 番目の出力を使用して、timetable TT
にインデックスを付けることができます。timetable TT2
には、行時間が rangeOfTimes
で指定された範囲内にある行のみが含まれます。
[tf,whichVars] = (TT,rangeOfTimes); TT2 = T(whichRows,:)
拡張機能
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
バージョン履歴
R2020a で導入overlapsrange
を呼び出すときに、開始時間と終了時間としてイベント フィルターを使用する時間範囲を指定できます。イベント フィルターを使用するには、まずイベント テーブルを入力 timetable に付加する必要があります。イベント フィルターを指定した overlapsrange
の使用の詳細については、eventfilter
を参照してください。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)