Определите, являются ли времена в расписании регулярными
TF = isregular(TT)
TF = isregular(TT,unit)
[TF,dt]
= isregular(___)
возвращает TF
= isregular(TT
)1
(true
), если времена строки в расписании TT
являются регулярными. В противном случае это возвращает 0
(false
). Времена строки являются регулярными, если они увеличиваются или уменьшаются монотонно фиксированным временным шагом. Например, если времена строки подряд всегда отличаются на одну секунду, то времена являются регулярными.
возвращает TF
= isregular(TT
,unit
)1
(true
), если времена строки являются регулярными относительно календарного модуля длительности, заданного unit
. Например, если времена строки являются значениями datetime, год которых и компоненты месяца являются регулярными к месяцу, и unit
является 'month'
, затем isregular
возвращает 1
.
В определенных случаях можно создать расписание при определении шага постоянного времени между временами строки, и все же получившееся расписание неправильно. Этот результат происходит, когда вы задаете временной шаг с помощью календарного модуля времени и существует время строки, которое вводит неправильный шаг. Например, если вы создаете расписание с временным шагом одного календарного месяца, начиная 31 января 2019, затем это неправильно относительно месяцев.
stime = datetime(2019,1,31); tstep = calmonths(1); TT = timetable('Size',[3 1],'VariableTypes',{'double'},... 'TimeStep',tstep,'StartTime',stime); tf = isregular(TT,'month')
tf = logical 0
Кроме того, существуют другие случаи, где неисправности происходят из-за сдвигов с Летнего времени (DST) или ко временам строки, которые являются секундами прыжка. Эта таблица задает временные стоимости строки и временные шаги, которые могут неожиданно произвести неправильные расписания.
Временная стоимость строки | Временной шаг |
---|---|
Время начала, заданное как 29-й, 30-й, или 31-й день месяца | Номер календарных месяцев или четвертей |
Время начала, заданное как 29 февраля | Номер календарных лет |
Любое время строки, произойдя между 1:00 и 2:00 в день, переключая с DST до стандартного времени (когда времена строки заданы как значения datetime, часовой пояс которых наблюдает DST), | Номер календарных дней или месяцев |
Любое время строки, которое является вторым прыжком (когда времена строки заданы как значения datetime, часовой пояс которых является часовым поясом | Временной шаг задан в любом календарном модуле (дни, недели, месяцы, четверти, или годы) |
caldiff
| calendarDuration
| datetime
| diff
| duration
| issorted
| retime
| sortrows
| split
| synchronize