Main Content

withtol

时间表行下标的时间容差

说明

示例

S = withtol(rowTimes,tol) 创建用于选择时间表行的下标。S 选择其行时间在 tol 指定的容差范围内与 rowTimes 中的某个时间相匹配的所有行。rowTimes 参量是日期时间或持续时间数组或者指定日期时间的字符向量元胞数组。tol 必须为持续时间值。

如果 rowTimes 包含日期时间值,则只能使用 S 通过下标对行时间是日期时间值的时间表进行索引。同样,如果 rowTimes 包含持续时间值,则只能使用 S 通过下标对行时间是持续时间值的时间表进行索引。

S = withtol(EF,tol) 使用事件过滤器创建行下标。要使用事件过滤器,您通过下标对其进行索引的时间表必须有附加的事件表。有关使用事件过滤器指定时间容差的详细信息,请参阅 eventfilter (自 R2023a 起)

示例

全部折叠

创建包含温度和压力数据且行时间以小时为单位的时间表。行时间中会有轻微的随机变化。选择行时间与时间向量中的对应时间相匹配的行,容差范围为五秒。

Time = datetime(2015,12,18) + hours(1:10)' + seconds(randn(10,1));
Temp = [37.3 39.1 42.3 42.6 43 43.9 44.1 43.3 42.5 42]';
Pressure = [29.4 29.6 30.0 30.0 30.1 29.9 29.9 29.8 29.6 29.7]';
TT = timetable(Time,Temp,Pressure)
TT=10×2 timetable
            Time            Temp    Pressure
    ____________________    ____    ________

    18-Dec-2015 01:00:00    37.3      29.4  
    18-Dec-2015 02:00:01    39.1      29.6  
    18-Dec-2015 02:59:57    42.3        30  
    18-Dec-2015 04:00:00    42.6        30  
    18-Dec-2015 05:00:00      43      30.1  
    18-Dec-2015 05:59:58    43.9      29.9  
    18-Dec-2015 06:59:59    44.1      29.9  
    18-Dec-2015 08:00:00    43.3      29.8  
    18-Dec-2015 09:00:03    42.5      29.6  
    18-Dec-2015 10:00:02      42      29.7  

创建时间跨度从 3:00 到 8:00 的时间向量。

newTimes = datetime(2015,12,18) + hours(3:8)
newTimes = 1x6 datetime
   18-Dec-2015 03:00:00   18-Dec-2015 04:00:00   18-Dec-2015 05:00:00   18-Dec-2015 06:00:00   18-Dec-2015 07:00:00   18-Dec-2015 08:00:00

选择 TT 中行时间与 newTimes 中的时间相匹配的行,容差范围为五秒。

S = withtol(newTimes,seconds(5));
TT2 = TT(S,:)
TT2=6×2 timetable
            Time            Temp    Pressure
    ____________________    ____    ________

    18-Dec-2015 02:59:57    42.3        30  
    18-Dec-2015 04:00:00    42.6        30  
    18-Dec-2015 05:00:00      43      30.1  
    18-Dec-2015 05:59:58    43.9      29.9  
    18-Dec-2015 06:59:59    44.1      29.9  
    18-Dec-2015 08:00:00    43.3      29.8  

输入参数

全部折叠

要在时间表中匹配的时间,指定为日期时间数组、持续时间数组、字符向量元胞数组或字符串数组。rowTimes 包含的时间不完全匹配时间表的行时间中的时间,但可能在指定的容差范围内。

如果 rowTimes 是字符向量元胞数组或字符串数组,则数组的元素指定 datetimeduration 函数可以转换的日期时间。

用于将时间与时间表的行时间进行匹配的容差,指定为持续时间、字符向量或字符串标量。

如果 tol 是字符向量或字符串标量,则 tol 指定 duration 函数可以转换的时间。

自 R2023a 起

事件过滤器。

扩展功能

基于线程的环境
使用 MATLAB® backgroundPool 在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool 加快代码运行速度。

版本历史记录

在 R2016b 中推出

全部展开