Documentation

This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English verison of the page.

Note: This page has been translated by MathWorks. Please click here
To view all translated materals including this page, select Japan from the country navigator on the bottom of this page.

withtol

Time tolerance for timetable row subscripting

Syntax

S = withtol(rowTimes,tol)

Description

example

S = withtol(rowTimes,tol) creates a subscript to select rows of a timetable. S selects all rows whose row times match a time in rowTimes within the tolerance specified by tol. The rowTimes argument is a datetime or duration array, or a cell array of character vectors that specify dates and times. tol must be a duration value.

If rowTimes contains datetime values, then you can only use S to subscript into a timetable whose row times are datetime values. Similarly, if rowTimes contains duration values, then you can only use S to subscript into a timetable whose row times are duration values.

Examples

collapse all

Create a timetable that contains temperature and pressure data with row times in hours. There is a slight random variance in the row times. Select rows with row times that match corresponding times in a time vector within a tolerance of five seconds.

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    

Create a time vector spanning the hours from 3:00 to 8:00.

newTimes = datetime(2015,12,18) + hours(3:8)
newTimes = 1×6 datetime array
   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

Select rows of TT with row times that match times in newTimes within five seconds.

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    

Input Arguments

collapse all

Times to match in a timetable, specified as a datetime array or a duration array. rowTimes contains times that do not exactly match times in the row times of a timetable, but that might be within a specified tolerance.

If rowTimes is a cell array of character vectors, then the character vectors specify dates and times that the datetime function can convert into datetime values.

Tolerance for matching times to the row times of a timetable, specified as a duration.

Introduced in R2016b

Was this topic helpful?