计算完整数据集的子部分(即窗口)的描述性统计数据通常很有用。Octave提供函数movfun
它将调用具有数据窗口的任意函数句柄并累积结果。许多最常用的函数,例如数据窗口上的移动平均值(movmean
),已经提供。
y =
movfun (fcn, x, wlen)
¶y =
movfun (fcn, x, [nb, na])
¶y =
movfun (…, "property", value)
¶应用函数fcn到一个移动的窗口的长度wlen关于数据x.
如果wlen是标量,函数fcn应用于长度为的移动窗口wlen当wlen是一个奇数,窗口是对称的,包括(wlen- 1) / 2
位于中心元素两侧的元素。例如在计算窗口长度为3的输出阿替尼5时,movfun
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movfun
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
在计算过程中,数据输入x被重塑为二维wlenxN矩阵和fcn因此,fcn必须接受数组输入参数,并沿维度1应用计算,即沿数组的列应用计算。
应用于具有的数组(可能是多维的)时n柱,fcn可以以两种格式之一返回结果:格式1) 大小为1-by的数组-nxdim3-通过…通过-dimN。这是Octave核心函数的典型输出格式。类型demo ("movfun", 5)
作为这个用例的一个例子。格式2) 长度的行向量n * numel_higher_dims
这里的numel_higher_dims是
prod (size (x)(3:end))
. fcn 的输出
i-th input column must be found in the output at indices
i:n:(n*numel_higher_dims)
.
This format is useful when concatenating functions into arrays, or when
using nthargout
. Type demo ("movfun", 6)
for an example of
this case.
可以通过指定来控制计算property/value对。有效属性为
"dim"
沿着指定的维度操作,而不是第一个非奇异维度的默认维度。
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y1.fcn(x(1:2))
和y终止fcn(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y1.fcn([NaN,x(1:2)])
和y终止fcn([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到fcn句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y1.fcn([user_value,x(1:2)])
和y终止fcn([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y1.fcn([x1.x(1:2)])
和y终止fcn([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y1.fcn([x终止x(1:2)])
和y终止fcn([x(结束1:结束),x1.
.
请注意,对于其中一些选择,边界处的窗口大小与中心部分的窗口大小不同,并且fcn在这种情况下必须工作。
"nancond"
控制是否NaN
和NA
应包括值(值:"includenan"
),或排除(值:"omitnan"
),从传递到的数据fcn。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
"outdim"
一个行向量,用于选择计算的哪些维度将出现在输出中y。只有当fcn返回格式为1的N维数组 。默认情况是返回所有输出维度。
编程说明:属性"outdim"
当的输出fcn具有许多维度,或者当选择所需输出的基本函数的软件包器成本过高时。当内存不是问题时,选择输出维度的最简单方法是首先使用计算完整结果movfun
然后用索引过滤结果。如果代码复杂性不是问题,那么可以使用匿名函数创建软件包器。例如,如果basefcn
是返回的函数K-标注行输出,且仅标注D如果需要,则可以使用以下软件包器。
fcn=@(x)basefcn(x)(:,列(x)*(D-1) +(1:列(x)));y=movfun(@fcn,…);
详见: movslice,prepad,postpad,permute,reshape.
slcidx =
movslice (N, wlen)
¶[slcidx, C, Cpre, Cpost, win] =
movslice (…)
¶生成索引以对长度向量进行切片N进入长度的窗户wlen.
输入N必须是正整数。
移动窗口长度输入wlen可以是不等于1的标量,也可以是整数的2元数组。对于标量值,如果奇数,则窗口是对称的,并且包括(wlen- 1) / 2
位于中心元素两侧的元素。如果wlen甚至窗户也是不对称的wlen2.
位于中心元素左侧的元素和wlen/2 - 1
中央元素右侧的元素。当wlen是2元件数组,[nb,na]
,该窗口包括nb当前元素左侧的元素,以及na当前元素右侧的元素。
输出slcidx是完全适合向量的切片的索引数组,其中当窗口从左向右移动时,每列都是一个单独的切片。切片有wlen标量的元素wlen或nb+na+ 1
数组值的元素wlen.
可选输出C是窗口中心位置的行向量,窗口完全位于该向量内。
可选输出Cpre和Cpost分别在向量的开始和结束处包含向量元素,这些元素导致窗口扩展到向量的结束之外。
可选输出win是具有相同行数的列向量slcidx其中包含定义为相对中心位置模板的移动窗口。
详见: movfun.
y =
movmad (x, wlen)
¶y =
movmad (x, [nb, na])
¶y =
movmad (…, dim)
¶y =
movmad (…, "nancond")
¶y =
movmad (…, property, value)
¶计算长度滑窗上的移动平均绝对偏差wlen关于数据x.
如果wlen是标量,函数mad
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movmad
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movmad
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据mad
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =疯狂(x(1:2))
和y(结束)=疯狂(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =疯狂([NaN,x(1:2)])
和y(结束)=疯狂([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到mad
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =疯狂([user_value,x(1:2)])
和y(结束)=疯狂([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =疯狂([x1.x(1:2)])
和y(结束)=疯狂([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =疯狂([x终止x(1:2)])
和y(结束)=疯狂([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmax,movmean,movmedian,movmin,movprod,movstd,movsum,movvar.
y =
movmax (x, wlen)
¶y =
movmax (x, [nb, na])
¶y =
movmax (…, dim)
¶y =
movmax (…, "nancond")
¶y =
movmax (…, property, value)
¶计算长度为的滑窗上的移动最大值wlenondatax.
如果wlen是标量,函数max
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movmax
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movmax
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据max
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =最大值(x(1:2))
和y(结束)=最大值(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =最大值([NaN,x(1:2)])
和y(结束)=最大值([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到max
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =最大值([user_value,x(1:2)])
和y(结束)=最大值([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =最大值([x1.x(1:2)])
和y(结束)=最大值([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =最大值([x终止x(1:2)])
和y(结束)=最大值([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmean,movmedian,movmin,movprod,movstd,movsum,movvar.
y =
movmean (x, wlen)
¶y =
movmean (x, [nb, na])
¶y =
movmean (…, dim)
¶y =
movmean (…, "nancond")
¶y =
movmean (…, property, value)
¶计算长度为的滑窗上的移动平均值wlenondatax.
如果wlen是标量,函数mean
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movmean
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movmean
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据mean
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =平均值(x(1:2))
和y(结束)=平均值(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =平均值([NaN,x(1:2)])
和y(结束)=平均值([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到mean
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =平均值([user_value,x(1:2)])
和y(结束)=平均值([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =平均值([x1.x(1:2)])
和y(结束)=平均值([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =平均值([x终止x(1:2)])
和y(结束)=平均值([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmedian,movmin,movprod,movstd,movsum,movvar.
y =
movmedian (x, wlen)
¶y =
movmedian (x, [nb, na])
¶y =
movmedian (…, dim)
¶y =
movmedian (…, "nancond")
¶y =
movmedian (…, property, value)
¶计算长度为的滑窗上的移动中值wlenondatax.
如果wlen是标量,函数movmedian
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movmedian
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movmedian
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据movmedian
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =movmedian(x(1:2))
和y(结束)=movmedian(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =movmedian([NaN,x(1:2)])
和y(结束)=movmedian([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到movmedian
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =movmedian([user_value,x(1:2)])
和y(结束)=movmedian([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =movmedian([x1.x(1:2)])
和y(结束)=movmedian([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =movmedian([x终止x(1:2)])
和y(结束)=movmedian([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmean,movmin,movprod,movstd,movsum,movvar.
y =
movmin (x, wlen)
¶y =
movmin (x, [nb, na])
¶y =
movmin (…, dim)
¶y =
movmin (…, "nancond")
¶y =
movmin (…, property, value)
¶计算长度为的滑窗上的移动最小值wlenondatax.
如果wlen是标量,函数min
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movmin
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movmin
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据min
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =最小值(x(1:2))
和y(结束)=最小值(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =最小值([NaN,x(1:2)])
和y(结束)=最小值([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到min
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =最小值([user_value,x(1:2)])
和y(结束)=最小值([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =最小值([x1.x(1:2)])
和y(结束)=最小值([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =最小值([x终止x(1:2)])
和y(结束)=最小值([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmean,movmedian,movprod,movstd,movsum,movvar.
y =
movprod (x, wlen)
¶y =
movprod (x, [nb, na])
¶y =
movprod (…, dim)
¶y =
movprod (…, "nancond")
¶y =
movprod (…, property, value)
¶计算在一定长度的滑窗上移动的产品wlenondatax.
如果wlen是标量,函数movprod
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movprod
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movprod
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据movprod
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =movprod(x(1:2))
和y(端)=movprod(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =movprod([NaN,x(1:2)])
和y(端)=movprod([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到movprod
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =movprod([user_value,x(1:2)])
和y(端)=movprod([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =movprod([x1.x(1:2)])
和y(端)=movprod([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =movprod([x终止x(1:2)])
和y(端)=movprod([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmean,movmedian,movmin,movstd,movsum,movvar.
y =
movstd (x, wlen)
¶y =
movstd (x, [nb, na])
¶y =
movstd (…, opt)
¶y =
movstd (…, opt, dim)
¶y =
movstd (…, "nancond")
¶y =
movstd (…, property, value)
¶计算长度为的滑窗上的移动标准偏差wlen关于数据x.
如果wlen是标量,函数movstd
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movstd
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movstd
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
可选参数opt确定要使用的规范化类型。有效值为
规范化为N-1,提供方差的最佳解算器的平方根[默认值]
规范化为N,这提供了二阶矩在平均值附近的平方根
如果可选参数dim给定,沿此维度操作。规范化参数opt必须在维度之前给定。
要使用 opt 的默认值,你可以传入空的
参数 []
.
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据movstd
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =movstd(x(1:2))
和y(结束)=movstd(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =movstd([NaN,x(1:2)])
和y(结束)=movstd([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到movstd
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =movstd([user_value,x(1:2)])
和y(结束)=movstd([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =movstd([x1.x(1:2)])
和y(结束)=movstd([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =movstd([x终止x(1:2)])
和y(结束)=movstd([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmean,movmedian,movmin,movprod,movsum,movvar.
y =
movsum (x, wlen)
¶y =
movsum (x, [nb, na])
¶y =
movsum (…, dim)
¶y =
movsum (…, "nancond")
¶y =
movsum (…, property, value)
¶计算长度滑窗上的移动总和wlenondatax.
如果wlen是标量,函数movsum
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movsum
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movsum
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
如果可选参数dim给定,沿此维度操作。
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据movsum
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =movsum(x(1:2))
和y(结束)=movsum(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =movsum([NaN,x(1:2)])
和y(结束)=movsum([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到movsum
句柄NaN
,以及属性"nancond"
.
数据数组之外的任何窗口元素都被指定的值替换user_value其必须是数字标量。例如具有长度为3的窗口,y(1) =movsum([user_value,x(1:2)])
和y(结束)=movsum([x(结束1:结束),user_value])
。的常见选择user_value为0。
"same"
数据数组之外的任何窗口元素都将替换为的值x在边界处。例如对于长度为3的窗口,y(1) =movsum([x1.x(1:2)])
和y(结束)=movsum([x(结束1:结束),x终止
.
"periodic"
窗口被软件包,以便从数据的另一侧获取任何丢失的数据元素。例如对于长度为3的窗口,y(1) =movsum([x终止x(1:2)])
和y(结束)=movsum([x(结束1:结束),x1.
.
"SamplePoints"
注意:此参数尚未支持。
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmean,movmedian,movmin,movprod,movstd,movvar.
y =
movvar (x, wlen)
¶y =
movvar (x, [nb, na])
¶y =
movvar (…, opt)
¶y =
movvar (…, opt, dim)
¶y =
movvar (…, "nancond")
¶y =
movvar (…, property, value)
¶计算长度滑窗上的移动方差wlenondatax.
如果wlen是标量,函数var
应用于任意长度的窗口wlen当wlen是奇数,窗口是对称的,包括(wlen- 1) / 2
元素位于中心元素的一侧。例如在计算窗口长度为3的索引5处的输出时,movvar
使用数据元素[4, 5, 6]
如果wlen是偶数,窗口是不对称的,并且具有wlen2.
中央元素左侧的元素,以及wlen/2 - 1
中央元素右侧的元素。例如当计算窗口长度为4的索引5处的输出时,movvar
使用数据元素[3, 4, 5, 6]
.
如果wlen是一个包含两个元素的数组[nb,na]
,该函数应用于移动窗口-nb:na
。此窗口包括nb元素数量之前currentelement和na元素数量之后当前元素。始终包括当前元素。例如,给定wlen= [3, 0]
,用于计算索引5的数据为[2, 3, 4, 5]
.
可选参数opt确定要使用的规范化类型。有效值为:
规范化为N-1,提供了方差的最佳无偏估计量[默认值]
规范化为N,这提供了围绕平均值的第二个力矩
如果可选参数dim给定,沿此维度操作。规范化参数opt必须在维度之前给定。
要使用 opt 的默认值,你可以传入空的
参数 []
.
可选的字符串参数"nancond"
控制是否NaN
和NA
应包括值("includenan"
),或排除("omitnan"
),从传递到的数据var
。默认为"includenan"
。注意:"omitnan"
参数尚未实现。
可以通过指定来控制计算property/value对。有效属性为
"Endpoints"
此属性控制在边界(端点)处计算结果的方式 )窗户的。可能的值为:
"shrink"
(default)窗口在数组的开始和结束处被截断,以排除没有源数据的元素。例如对于长度为3的窗口,y(1) =var(x(1:2))
和y(端)=var(x(结束1:结束)
.
"discard"
任何y使用扩展到originaldata数组之外的窗口的值将被删除。例如,对于10个元素的数据向量和长度为3的窗口,输出将仅包含8个元素。第一个元素需要计算指数上的函数[0, 1, 2]
并且因此被丢弃。最后一个元素需要计算指数上的函数[9, 10, 11]
并且被重新丢弃。
"fill"
数据数组之外的任何窗口元素都被替换为NaN
例如对于长度为3的窗口,y(1) =var([NaN,x(1:2)])
和y(端)=var([x(结束1:结束),NaN])
。此参数通常会导致y有NaN
边界处的值,尽管它受到var
句柄NaN
,以及属性"nancond"
.
Any window elements outside the data array are replaced by the specified
value user_value which must be a numeric scalar. For example, with a
window of length 3,
y(1) = var ([user_value, x(1:2)])
, and
y(end) = var ([x(end-1:end), user_value])
.
A common choice for user_value is 0.
"same"
Any window elements outside the data array are replaced by the value of
x at the boundary. For example, with a window of length 3,
y(1) = var ([x(1), x(1:2)])
, and
y(end) = var ([x(end-1:end), x(end)])
.
"periodic"
The window is wrapped so that any missing data elements are taken from
the other side of the data. For example, with a window of length 3,
y(1) = var ([x(end), x(1:2)])
, and
y(end) = var ([x(end-1:end), x(1)])
.
"SamplePoints"
Caution: This option is not yet implemented.
编程注意:这个函数是一个软件包器,它调用movfun
。有关其他参数和文档,详见movfun
.
详见: movfun,movslice,movmad,movmax,movmean,movmedian,movmin,movprod,movstd,movsum.
版权所有 © 2024-2025 Octave中文网
ICP备案/许可证号:黑ICP备2024030411号-2