matlab.tall.blockMovingWindow
语法
描述
(
,在那里助教
,结核病
,……)= matlab.tall.blockMovingWindow (windowfcn
,blockfcn
,窗口
,tX
,泰
,……)windowfcn
和blockfcn
函数句柄返回多个输出,返回数组助教,结核病,…
,每一个对应的一个输出参数windowfcn
和blockfcn
。的输入windowfcn
和blockfcn
件的数据参数吗tX,泰,…
。这个语法有这些要求:
windowfcn
和blockfcn
必须返回相同数量的输出和要求matlab.tall.blockMovingWindow
。每个输出的
windowfcn
和blockfcn
必须是相同的类型作为第一个数据输入tX
。所有输出
助教,结核病,…
必须有相同的高度。
例子
移动窗口和高计算数组中
使用matlab.tall.blockMovingWindow
计算移动的航班抵达和起飞延误。
创建一个数据存储airlinesmall.csv
数据集转换成一个高大的数组。数据包含的信息到达和离开的时间我们的航班。提取ArrDelay
和DepDelay
变量向量的航班延误,创建一个高大数组包含延迟作为单独的列。
varnames = {“ArrDelay”,“DepDelay”};ds = tabularTextDatastore (“airlinesmall.csv”,“TreatAsMissing”,“NA”,…“SelectedVariableNames”,varnames);tt =高(ds);tX = (tt。ArrDelaytt.DepDelay]
tX) =(高双矩阵8 12 8 1 21 20 13 12 4 1 59 63 3 2 11 1::::
使用matlab.tall.blockMovingWindow
计算数据的移动意味着在第一维度与窗口大小为10。自windowfcn
只适用于单一窗口的数据,您可以使用的意思是
函数来降低数据到一个矩阵的窗户一行。的blockfcn
适用于整个的数据块,所以使用movmean
函数计算均值的每个窗口的数据块。
windowfcn = @(信息,x)意味着(x, 1,“omitnan”);blockfcn = @(信息,x) movmean (x, info.Window 1“omitnan”,“端点”,“丢弃”);一个= matlab.tall。blockMovingWindow (windowfcn blockfcn 10, tX)
一个= MxNx…高的双重数组?吗?吗?…吗?吗?吗?…吗? ? ? ... : : : : : :
收集的一部分结果到内存中。
收集((1:10,:))
评估高表达式使用当地的MATLAB会话:通过1 2:在1.1秒完成,通过2 2:在4.7秒完成评估在6.5秒完成
ans =10×210.8000 8.8000 18.8333 17.8333 16.5714 15.0000 15.8750 13.0000 14.4444 11.8889 13.2000 10.8000 14.0000 11.1000 13.5000 11.9000 15.3000 11.4000 19.7000 13.4000
移动表统计信息
计算移动数据表的变量。
加载outages.csv
数据集作为高表。数据包含关于停电的信息。
T =高(readtable (“outages.csv”))
T = 1468 x6高表地区OutageTime损失客户RestorationTime引起_________________ ___________ ______ __________ ___________ ___________________{“西南”}2002-02-01 12:18 458.98 - 1.8202 e + 06 2002-02-01 16:50{“暴风雪”}{“东南”}2003-01-23 00:49 530.14 - 2.1204 e + 05 NaT{“暴风雪”}{“东南”}2003-02-07)21:15 289.4 - 1.4294 e + 05 2003-02-07 08:14{“暴风雪”}{‘西方’}2004-04-06 05:44 434.81 - 3.4037 e + 05 2004-04-06 06:10{“设备故障”}{“中西部”}2002-03-16 06:18 186.44 - 2.1275 e + 05 2002-03-16 23:23{“暴风”}{‘西方’}2003-06-18 02:49 0 0 2003-06-18 10:54{‘攻击’}{‘西方’}2004-06-20 39 231.29南2004-06-20 19:16{“设备故障”}{‘西方’}2002-06-06 19:28 311.86南2002-06-06 00:51{“设备故障”}::::::::::::
使用matlab.tall.blockMovingWindow
应用移动窗函数高表的块。指定这些选项:
blkstats
作为块函数来操作完成的数据块(包括最后的例子作为本地函数)。窗口大小50和5的步伐。
端点
作为“丢弃”
忽略不完整的窗口的数据。这个值,windowfcn
可以指定输入为空[]
因为只有完整的数据操作窗口。输入表有六个变量,但双精度两个输出向量。指定标量双打作为值
OutputsLike
这函数允许改变数据类型和大小。
[A, B] = matlab.tall。blockMovingWindow ([] @blkstats 50 T“步”5,…“端点”,“丢弃”,“OutputsLike”,{1});
预览结果中的几行。
[A, B] =收集(头(A)、(B))
评估高表达式使用当地的MATLAB会话:通过1 2:在0.4秒完成,通过2 2:在0.61秒完成评估在1.5秒完成
一个=8×1254.0861 254.0861 340.3499 452.0191 464.8524 471.9737 464.8524 464.8524
B =8×1105×1.3447 1.0779 1.4227 1.4509 1.2888 1.2888 1.2308 1.3722
的blkstats
函数计算的移动平均价值损失
和客户
表变量在第一维度使用指定的窗口大小。函数的应用步
价值减少输出的大小,然后返回结果的两个向量。
函数[着干活,out2] = blkstats(信息,t) = movmedian ([t。损失t。客户)信息。窗口1“omitnan”,“端点”,“丢弃”);=(1:信息。步:结束,:);着干活= (:1);out2 = (:, 2);结束
输入参数
windowfcn
- - - - - -功能,适用于数据的不完整的windows
函数处理|匿名函数|[]
函数适用于不完整的窗口的数据,指定为一个函数处理,匿名函数,或者[]
。windowfcn
每调用一次完整窗口随着计算在高维度数据。matlab.tall.blockMovingWindow
适用于windowfcn
只有当“端点”
的默认值吗“缩水”
。如果你指定一个不同的值“端点”
,然后设置windowfcn
来[]
。
每个输出的windowfcn
必须是相同的类型作为第一个数据输入tX
。您可以使用“OutputsLike”
选择返回输出不同的数据类型。
一般功能的签名windowfcn
是
(a, b, c,……)= windowfcn(info, x, y, ...)
信息
提供的输入是一个结构matlab.tall.blockMovingWindow
这些领域包括:
步
窗口之间——指定步长(默认值:1),设置这个值“步”
名称-值对。窗口
——指定的窗口大小。设置这个值窗口
输入参数。
windowfcn
必须满足这些要求:
输入参数——输入
(x, y, z,……)
是装入内存的数据块。从各自的提取数据产生的块高输入数组(tX,泰,tZ,…)
。输入(x, y, z,……)
满足这些属性:所有的输入
(x, y, z,……)
有相同的尺寸在第一维度。的数据块
(x, y, z,……)
来自同一指数在高维度,假设高数组nonsingleton在高维度。例如,如果tX
和泰
nonsingleton在高维度,那么第一组块可以吗x = tX (1:20000:)
和y =泰(1:20000:)
。当第一个维度的
(tX,泰,tZ,…)
有一个大小1
,相应的块(x, y, z,……)
包括高数组中的所有数据。应用
windowfcn
必须导致减少输入数据的一个标量或一片数组身高1。当输入一个矩阵,一天数组,表,或时间表,应用
windowfcn
必须减少导致的输入数据在每一个列或变量。
输出参数——输出
(a, b, c,……)
是装入内存块发送给各自的输出(助教、结核,tC,…)
。输出(a, b, c,……)
满足这些属性:所有的输出
(a, b, c,……)
必须具有相同的大小在第一维度。所有的输出
(a, b, c,……)
垂直连接有各自的结果之前的电话windowfcn
。所有的输出
(a, b, c,……)
被发送到相同的索引在第一维度在各自目的地输出数组。
功能规则- - - - - -
windowfcn
必须满足这个功能规则:F ([inputs1;inputs2]) = = (F (inputs1);F (inputs2))
:应用功能连接的输入应该是一样的应用函数分别输入然后连接结果。
例子:一个= matlab.tall。blockMovingWindow (@windowfcn @blockfcn 10, tX)
例子:一个= matlab.tall。blockMovingWindow (tX @blockfcn[], 10日,“端点”、“丢弃”)
数据类型:function_handle
blockfcn
- - - - - -功能应用的数据块
函数处理|匿名函数
功能应用的数据块,指定为一个函数处理或匿名函数。blockfcn
应用于包含完整的数据的数据块。因此,blockfcn
必须在整个矢量化的方式操作的数据块并返回输出的适当的大小指定窗口大小和步伐。
每个输出的blockfcn
必须是相同的类型作为第一个数据输入tX
。您可以使用“OutputsLike”
选择返回输出不同的数据类型。
matlab.tall.blockMovingWindow
适用于blockfcn
的数据块当块只包含完整的窗口:
中间块时
“端点”
被设置为“缩水”
(默认行为)。在这种情况下windowfcn
运行在windows上的数据不完整。对所有块时
“端点”
被设置为“丢弃”
或一个填充的值。
一般功能的签名blockfcn
是
(a, b, c,……)= blockfcn(info, bX, bY, bZ, ...)
信息
提供的输入是一个结构matlab.tall.blockMovingWindow
这些领域包括:
步
窗口之间——指定步长(默认值:1),设置这个值“步”
名称-值对。窗口
——指定的窗口大小。设置这个值窗口
输入参数。
的数据块bX,,,…
那matlab.tall.blockMovingWindow
提供给blockfcn
这些属性:
模块只包含全尺寸的窗口。
blockfcn
没有定义一个行为数据的不完整的windows。第一个窗口的数据从第一个元素开始的块。最后一个窗口的最后一个元素的最后一个元素是块。
blockfcn
必须满足这些要求:
输入参数——输入
(bX,,,……)
是装入内存的数据块。从各自的提取数据产生的块高输入数组(tX,泰,tZ,…)
。输入(bX,,,……)
满足这些属性:所有的输入
(bX,,,……)
有相同的大小在任何允许扩张后的第一个维度。的数据块
(bX,,,……)
来自同一指数在高维度,假设高数组nonsingleton在高维度。例如,如果tX
和泰
nonsingleton在高维度,那么第一组块可以吗bX = tX (1:20000:)
和通过=泰(1:20000:)
。如果第一个维度的数据输入
(tX,泰,tZ,…)
有一个大小1
,那么相应的块(bX,,,……)
包括高数组中的所有数据。应用
blockfcn
必须导致减少输入数据,这样结果高度等于窗户的数量。您可以使用info.Window
和info.Stride
确定数量的窗户在一块。如果输入是一个矩阵,一天数组,表,或时间表,然后应用
blockfcn
必须减少导致的输入数据在每一个列或变量。
输出参数——输出
(a, b, c,……)
是装入内存块,发送给相应的输出(助教、结核,tC,…)
。输出(a, b, c,……)
满足这些属性:所有的输出
(a, b, c,……)
必须具有相同的大小在第一维度。所有的输出
(a, b, c,……)
垂直连接有各自的结果之前的电话blockfcn
。所有的输出
(a, b, c,……)
被发送到相同的索引在第一维度在各自目的地输出数组。
功能规则- - - - - -
blockfcn
必须满足这个功能规则:F ([inputs1;inputs2]) = = (F (inputs1);F (inputs2))
:应用功能连接的输入应该是一样的应用函数分别输入然后连接结果。
例子:一个= matlab.tall。blockMovingWindow (@windowfcn @blockfcn 10, tX)
例子:一个= matlab.tall。blockMovingWindow (tX @blockfcn[], 10日,“端点”、“丢弃”)
数据类型:function_handle
窗口
- - - - - -窗口大小
正整数标量|双元素行向量
窗口大小,指定为一个正整数标量或双元素行向量(NB NF)
。
如果
窗口
是一个标量,那么:当窗口大小奇怪的,每个窗口都是集中在中相应的元素数据。
当窗口大小甚至,每个窗口集中有关当前和以前的元素。
如果
窗口
是一个向量(NB NF)
包括前面,那么窗口注
元素、当前元素和下一个NF
输入的元素。
默认情况下,窗口大小自动截断端点时没有足够的元素可用来填补这个窗口。窗口以这种方式被截断时,功能操作只能在填满窗口的元素。你可以改变这个行为端点
名称-值对。
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
tX
,泰
- - - - - -输入数组(作为单独的参数)
标量|向量|矩阵|多维数组|表|时间表
输入数组,指定为独立参数的标量、向量,矩阵,多维数组,表,或时间表。输入数组可以高或内存中的数组。输入数组作为输入变换函数fcn
。每个输入数组tX,泰,…
必须有相同的高度。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:tA = matlab.tall。blockMovingWindow (@windowfcn blockfcn、窗、tX,跨步,2)
步
- - - - - -步长窗口之间
1
(默认)|正整数标量
步长之间的窗口,指定为逗号分隔组成的“步”
和一个正整数标量。后fcn
作用于一个窗口的数据,计算提出的“步”
值在操作之前下一个窗口。增加的价值“步”
从1的默认值是一样的输出的大小减少挑选其他元素,或每第三个元素,等等。
默认情况下,价值的“步”
是1
,所以每个窗口集中在输入每个元素。举例来说,这里是一个移动的总和计算的窗口大小3操作的向量(1 2 3 4 5 6)”
:
如果该值的“步”
是2
,然后计算每个窗口的变化,以每秒钟元素输入(1、3、5)。移动和现在返回三部分和而不是六:
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
端点
- - - - - -方法治疗前导和尾随的窗户
“缩水”
(默认)|“丢弃”
|填充的值
方法治疗前导和尾随窗口,指定为逗号分隔组成的“端点”
其中一个表中的值。
开始和结束的一个窗口的计算,被操作的窗口的元素是不完整的。的“端点”
选项指定如何对待这些不完整的窗口。
“端点” 价值 |
描述 | 例如:移动和 |
---|---|---|
|
缩小窗口大小的端点附近的输入只包括现有元素。 |
|
|
不输出任何窗户不完全重叠的结果与现有的元素。 |
|
数字或逻辑填充的值 |
替代nonexisting元素指定的数字或逻辑值。
|
|
数据类型:单
|双
|int8
|int16
|int32
|int64
|uint8
|uint16
|uint32
|uint64
|逻辑
|字符
|字符串
OutputsLike
- - - - - -输出数组的原型
单元阵列
样机的输出数组,指定为逗号分隔组成的“OutputsLike”
和一个包含原型阵列单元阵列。当你指定“OutputsLike”
,输出数组助教,结核病,…
返回的matlab.tall.blockMovingWindow
有相同的数据类型和属性指定的原型数组{PA、PB,…}
。您必须指定“OutputsLike”
每当一个输出数组的数据类型不同的输入数组。如果您指定“OutputsLike”
,那么你必须指定一个原型为每个输出数组。
例子:tA = matlab.tall.blockMovingWindow (…tX, OutputsLike, {int8 (1)});
,在那里tX
是一个双精度高的数组,返回助教
作为int8
而不是双
。
数据类型:细胞
输出参数
助教
,结核病
——输出数组
矩阵向量标量| | |多维数组
输出数组,返回标量、向量,矩阵或多维数组。如果任何输入matlab.tall.blockMovingWindow
高,那么所有输出参数也高。否则,输出参数都是内存中的数组。
大小和输出数组的数据类型取决于指定的窗口函数
windowfcn
和blockfcn
。输出数组
助教,结核病,…
都有相同的高度,这取决于的价值“步”
和“端点”
。默认输出数组作为输入数组大小相同。一般来说,输出
助教,结核病,…
都必须具有相同的数据类型作为第一个数据输入tX
。然而,您可以指定“OutputsLike”
返回不同的数据类型。在这种情况下,输入数组tX,泰,…
是空的,或者什么时候“端点”
是“丢弃”
和没有足够的元素来填补一个全尺寸的窗口,matlab.tall.blockMovingWindow
返回空的输出。空的大小输出是基于输入数组的大小tX
,或者提供原型数组的大小“OutputsLike”
如果指定。
提示
使用
matlab.tall.movingWindow
对于简单的滑动窗口的计算。matlab.tall.blockMovingWindow
是一种先进的API设计提供更多的灵活性在高大的数组执行滑动窗口的计算。以来,更复杂的使用功能必须精确地处理的数据块包含许多完整的窗口。然而,适当的矢量化计算,可以减少必要的函数调用和提高性能。
版本历史
介绍了R2019a
打开举例
你们possedez一个版本modifiee de cet(中央东部东京)为例。Souhaitez-vous打开cet(中央东部东京)为例用vos修改吗?
对MATLAB
你们有派对在联合国留置权,对应这个对MATLAB:
倒实行la对saisissez-la在fenetre德对MATLAB。Les navigateurs web不sup金宝appportent Les MATLAB命令。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。