主要内容

withinrange

确定的时间表排时间在指定的时间范围内

描述

例子

特遣部队= withinrange (TT,rangeOfTimes)返回1(真正的如果行乘以的范围TT完全是在指定的时间范围内吗rangeOfTimes。否则,它将返回0()。

的行次的范围TT是由它的最小和最大行乘以。

例子

特遣部队= withinrange (TT,曾经的)返回1如果行乘以TT都是相同的,都等于指定的时间曾经的

例子

(特遣部队,whichRows)= withinrange (___)也返回逻辑指数显示的行TT在指定的时间范围内。

例子

全部折叠

创建一个时间表的行乘以范围从0秒到0.4秒。

强度= [100;98.7;95.2;101.4;99.1);TT =时间表(强度,“步伐”秒(0.1))
TT =5×1的时间表时间强度_____ 0秒100 0.1秒98.7 0.2秒95.2 0.3秒101.4 99.1 0.4秒

创建一个时间范围对象的范围1到1秒。要创建对象,可以使用timerange函数。它的输入时间,您可以创建使用函数。

rangeOfTimes = timerange(秒(1),秒(1))
rangeOfTimes =时间表timerange下标:选择时间表行与次半开区间:[1秒,1秒)看时刻表选择数据行时间和变量类型。

确定的行乘以TT指定的范围内吗rangeOfTimes

rangeOfTimes tf = withinrange (TT)
tf =逻辑1

创建另一个时间范围对象的范围0.1 - -0.9秒。的withinrange函数返回0,因为第一行的时间TT不是在rangeOfTimes

rangeOfTimes = timerange(秒(0.1),秒(0.9))
rangeOfTimes =时间表timerange下标:选择时间表行与次半开区间:[0.1秒,0.9秒)看时刻表选择数据行时间和变量类型。
rangeOfTimes tf = withinrange (TT)
tf =逻辑0

创建两个时间表有不同的时间范围。时间表还可以有不同的变量和不同数量的行。

强度= [100;98.7;95.2;101.4;99.1);TT1 =时间表(强度,“步伐”秒(0.1))
TT1 =5×1的时间表时间强度_____ 0秒100 0.1秒98.7 0.2秒95.2 0.3秒101.4 99.1 0.4秒
阅读= (74;83;99;75;87;93;92);TT2 =时间表(阅读,“步伐”秒(0.1),“开始时间”秒(-0.1))
TT2 =7×1的时间表时间阅读说-0.1秒74 0秒83 0.1秒99 0.2秒75 0.3秒87 0.4秒93 0.5秒92

确定行次的范围TT1行乘以的范围内吗TT2

tf = withinrange (TT1 TT2)
tf =逻辑1

另一方面,行次的范围TT2不是的范围内TT1

tf = withinrange (TT2 TT1)
tf =逻辑0

创建一个时间表包含价格定在每个月的开始和中间。

时间= datetime ({“2018-01-01”;“2018-01-15”;“2018-02-01”;“2018-02-15”;“2018-03-01”;“2018-03-15”});价格=兰迪(1)(85 110),6日;TT =时间表(时间、价格)
TT =6×1的时间表时间价格___________ _____ 01 - 106年1月- 2018年1月15 - 15 - 2018 108 01 - 88年2月- 2018年3月- 108年2月- 2018年01 - 2018 101 3月15 - 87 - 2018

指定一个时间点上使用datetime函数。这个时间是午夜2月1日,2018。

前= datetime (“2018-02-01”)
曾经的=datetime01 - 2月- 2018

比较的行乘以TT曾经的。而一行时间等于曾经的,另一行乘以是不平等的。因此,withinrange函数返回0。

曾经的tf = withinrange (TT)
tf =逻辑0

时间表可以有重复的行乘以。改变的所有行乘以TT相同的值,调用withinrange一次。现在,所有行乘以等于曾经的,withinrange返回1

TT.Time(1:结束)=前
TT =6×1的时间表时间价格___________ _____ 01 - 106年2月- 2018年01 - 108年2月- 2018年01 - 88年2月- 2018年01 - 108年2月- 2018年2月01 - 101年2月- 2018年01 - 87 - 2018
曾经的tf = withinrange (TT)
tf =逻辑1

创建一个时间表。

强度= [100;98.7;95.2;101.4;99.1);TT =时间表(强度,“步伐”秒(0.1))
TT =5×1的时间表时间强度_____ 0秒100 0.1秒98.7 0.2秒95.2 0.3秒101.4 99.1 0.4秒

指定一个时间范围。然后确定哪一行TT在时间范围内。第二个输出参数,whichRows是一个逻辑数组的元素对应的行TT。它包含1为每一行的行时间是在时间范围内,和0的每一行时间不是。

rangeOfTimes = timerange(秒(0.1),秒(0.35));[tf, whichRows] = withinrange (TT, rangeOfTimes)
tf =逻辑0
whichRows =5 x1逻辑阵列0 1 1 1 0

访问时间范围内的行,指数TT使用whichRows

TT2 = TT (whichRows:)
TT2 =3×1的时间表时间强度_____ 0.1秒98.7 0.2秒95.2 101.4 0.3秒

输入参数

全部折叠

输入时间表。的最小和最大行乘以TT确定的时间。

时间范围,指定时间范围对象或时间表。

  • 如果你使用一个时间范围对象,然后使用创建它timerange功能,显式地指定范围的开始和结束时间作为输入timerange

  • 如果你使用一个时间表,那么你不需要显式地指定范围的开始和结束。withinrange让他们自动的最小和最大行乘以时间表。

一个时间,指定为一个datetime持续时间标量。

输出参数

全部折叠

或真或假,作为一个逻辑返回1如果行乘以的范围TT完全是在指定的时间范围内吗rangeOfTimes,一个逻辑0否则。

在指定的时间范围内,索引的行作为一个逻辑数组返回。你可以,索引TT使用whichRows

例如,在这段代码中,您可以使用第二个输出withinrange索引的时间表TT。的时间表TT2只包括那些行乘以的行指定的范围内rangeOfTimes

(tf, whichVars) = (TT, rangeOfTimes);TT2 = T (whichRows:)
介绍了R2020a