movvar
移动方差
语法
说明
M = movvar(___,
指定在上述任意语法的计算中包括还是忽略 nanflag
)NaN
值。movvar(A,k,'includenan')
会在计算中包括所有 NaN
值,而 movvar(A,k,'omitnan')
则忽略这些值并基于较少的点计算方差。
M = movvar(___,
使用一个或多个名称-值对组参数指定方差的其他参数。例如,如果 Name,Value
)x
是时间值向量,则 movvar(A,k,'SamplePoints',x)
相对于 x
中的时间计算移动方差。
示例
M = movvar(A,3)
M = 1×10
8.0000 4.0000 22.3333 19.0000 1.0000 1.0000 9.3333 7.0000 1.0000 0.5000
向量的尾部移动方差
M = movvar(A,[2 0])
M = 1×10
0 8.0000 4.0000 22.3333 19.0000 1.0000 1.0000 9.3333 7.0000 1.0000
指定移动方差的归一化
M = movvar(A,3,1)
M = 1×10
4.0000 2.6667 14.8889 12.6667 0.6667 0.6667 6.2222 4.6667 0.6667 0.2500
矩阵的移动方差
M = movvar(A,3,0,2)
M = 3×3
8.0000 4.0000 2.0000
0.5000 1.0000 0.5000
8.0000 7.0000 0.5000
包含 NaN
元素的向量的移动方差
M = movvar(A,3)
M = 1×10
8.0000 NaN NaN NaN 1.0000 NaN NaN NaN 1.0000 0.5000
重新计算方差,但忽略 NaN
值。当 movvar
舍弃 NaN
元素时,它将根据窗口中的剩余元素计算方差。
M = movvar(A,3,‘omitnan’)
M = 1×108.0000 8.0000 40.5000 0.5000 1.0000 0.5000 18.0000 0.5000 1.0000 0.5000
基于样本点计算移动方差
k = hours(3);
t = datetime(2016,1,1,0,0,0) + hours(0:5)
t = 1x6 datetime array
Columns 1 through 3
01-Jan-2016 00:00:00 01-Jan-2016 01:00:00 01-Jan-2016 02:00:00
Columns 4 through 6
01-Jan-2016 03:00:00 01-Jan-2016 04:00:00 01-Jan-2016 05:00:00
M = movvar(A,k,‘SamplePoints’,t)
M = 1×6
8.0000 4.0000 22.3333 19.0000 1.0000 0.5000
仅返回满窗口方差
M = movvar(A,3,‘Endpoints’,‘discard’)
M = 1×8
4.0000 22.3333 19.0000 1.0000 1.0000 9.3333 7.0000 1.0000
输入参数
输入数组,指定为向量、矩阵或多维数组。
数据类型: single
| double
| logical
k
- 窗口长度
数值或持续时间标量
窗口长度,指定为数值或持续时间标量。当 k
是正整数标量时,中心方差包括当前位置的元素以及周围的相邻元素。例如,对于向量 A
,由长度为三的窗口定义的三点方差将产生下列计算:
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| duration
[kb kf]
- 定向窗口长度
包含两个元素的数值或持续时间行向量
定向窗口长度,指定为包含两个元素的数值或持续时间行向量。当 kb
和 kf
为正整数标量时,将基于 kb+kf+1
个元素进行计算。该计算包括当前位置的元素、当前位置前面的 kb
个元素以及当前位置后面的 kf
个元素。例如,对于向量 A
,由定向窗口 [2 1]
定义的四点方差将产生下列计算:
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| duration
w
- 粗细
0
(默认) | 1
权重,指定为下列值之一:
0
- 按k-1
进行归一化,其中k
是窗口长度。如果k=1
,则权重为k
。1
- 按k
实现归一化。
数据类型: single
| double
dim
- 沿其运算的维度
正整数标量
沿其运算的维度,指定为正整数标量。如果未指定值,则默认值是大小不等于 1 的第一个数组维度。
维度 dim
表示 movvar
运算所沿的维度,即指定的窗口的移动方向。
以一个二维输入数组 A
为例。
如果
dim = 1
,则movvar(A,k,0,1)
从第一列开始,垂直移过每行,每次计算k
个元素的方差。然后移到第二列,重复上述计算。此过程持续到所有列都计算完为止。参数0
指定默认权重,这是指定dim
时所必需的。如果
dim = 2
,则movvar(A,k,0,2)
从第一行开始,水平移过每列。每次计算k
个元素的方差。然后移到第二行,重复上述计算。此过程持续到所有行都计算完为止。参数0
指定默认权重,这是指定dim
时所必需的。
数据类型: double
| single
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
nanflag
- NaN
条件
'includenan'
(默认) | 'omitnan'
NaN
条件,指定为下列值之一:
'includenan'
- 计算方差时包括输入中的NaN
值,其对应输出为NaN
值。'omitnan'
- 忽略输入中的所有NaN
值。如果窗口只包含NaN
值,则movvar
返回NaN
。
名称-值对组参数
指定可选的、以逗号分隔的 Name,Value
对组参数。Name
为参数名称,Value
为对应的值。Name
必须放在引号中。您可采用任意顺序指定多个名称-值对组参数,如 Name1,Value1,...,NameN,ValueN
所示。
M = movvar(A,k,'Endpoints','fill')
详细信息
扩展功能
在 R2016a 中推出
来源:CSDN
作者:wangxhhtc
链接:https://blog.csdn.net/wangxhhtc/article/details/103482163