主要内容

movmedian

移动平均

描述

例子

M =移动中位数(一个k返回一个localk-点中值,其中每个中值是在长度滑动窗口上计算的k跨越相邻的元素一个.当k为奇数,则窗口以当前位置的元素为中心。当k为偶数时,窗口以当前元素和以前的元素为中心。当没有足够的元素填满窗口时,窗口大小在端点处自动截断。当窗口被截断时,中值只占用填充窗口的元素。尺寸和一个

  • 如果一个是向量吗movmedian沿向量的长度进行运算。

  • 如果一个那么是多维数组吗movmedian沿着大小不等于1的第一个数组维进行操作。

例子

M =移动中位数(一个(kb kf)计算窗口长度的中位数kb + kf + 1包括当前位置的元素,kb元素向后,和kf元素。

例子

M =移动中位数(___昏暗的返回沿维度移动中位数的数组昏暗的对于前面的任何语法。例如,如果一个是矩阵吗movmedian (k, 2)沿的列操作一个,计算k-元素滑动中值为每行。

例子

M =移动中位数(___nanflag指定是否包含或省略为前面任何语法计算的值。movmedian (k ' includenan ')包括所有值在计算时movmedian (k ' omitnan ')忽略它们,计算较少点的中值。

例子

M =移动中位数(___名称,值使用一个或多个名值对参数为移动中值指定附加参数。例如,如果x是时间值的矢量吗movmedian (k SamplePoints, x)计算相对于时间的移动中位数x

例子

全部折叠

计算一个行向量的三点中心移动中值。当窗口中端点处的元素少于三个时,取可用元素的平均值。

A = [4 8 6 -1 -2 -3 -1 3 4 5];M =移动中位数(A,3)
M =1×106.0000 6.0000 6.0000 -1.0000 -2.0000 -2.0000 -1.0000 3.0000 4.0000 4.5000

计算一个行向量的三点尾随移动中值。当窗口中端点处的元素少于三个时,取可用元素的平均值。

A = [4 8 6 -1 -2 -3 -1 3 4 5];M =移动中位数(A,[2 0])
M =1×104 6 6 6 -1 -2 -2 -1 3

计算矩阵的每一行的三点中心移动中值。窗口从第一行开始,水平滑动到行尾,然后移动到第二行,依此类推。维度参数为2,它在列之间滑动窗口一个

A = [4 8 6;-1 -2 -3;1 3 4]
一个=3×34 8 6 -1 -2 -3 -1 3 4
M =移动中位数(A,3,2)
M =3×36.0000 6.0000 7.0000 -1.5000 -2.0000 -2.5000 1.0000 3.0000 3.5000

计算包含的行向量的三点居中移动中值元素。

A = [4 8 NaN -1 -2 -3 NaN 3 4 5];M =移动中位数(A,3)
M =1×106.0000南南南-2.0000南南南4.0000 4.5000

重新计算中位数,但忽略值。当movmedian丢弃元素,它取窗口中剩余元素的中值。

M =移动中位数(A,3,“omitnan”
M =1×106.0000 6.0000 3.5000 -1.5000 -2.0000 -2.5000 0 3.5000 4.0000 4.5000

计算数据的3小时居中移动中位数一个根据时间向量t

A = [4 8 6 -1 -2 -3];K =小时(3);T = datetime(2016,1,1,0,0,0) + hours(0:5)
t =1 x6 datetime第四至第六列01-Jan-2016 03:00:00 01-Jan-2016 04:00:00 01-Jan-2016 05:00:00
M = movmedian(A,k,“SamplePoints”, t)
M =1×66.0000 6.0000 6.0000 -1.0000 -2.0000 -2.5000

计算行向量的以三点为中心的移动中值,但放弃使用输出中少于三点的任何计算。换句话说,只返回从完整的三元素窗口计算的中位数,而丢弃端点计算。

A = [4 8 6 -1 -2 -3 -1 3 4 5];M =移动中位数(A,3,“端点”“丢弃”
M =1×86 6 -1 -2 -2 -1 3 4

输入参数

全部折叠

输入数组,指定为矢量、矩阵或多维数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑

窗口长度,指定为数值或持续时间标量。当k为正整数标量,居中的中位数包括当前位置的元素加上周围的相邻元素。例如,由长度为3的窗口定义的三点中值会导致对向量的以下计算一个

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|持续时间

方向窗口长度,指定为包含两个元素的数字或持续行向量。当kb而且kf都是正整数标量,算完了吗kb + kf + 1元素。计算包括当前位置的元素,kb在当前位置之前的元素,和kf元素在当前位置之后。例如,方向窗口定义的四点中值(2 - 1)结果如下计算为一个矢量一个

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|持续时间

操作的维度,指定为正整数标量。如果未指定值,则默认为第一个大小不等于1的数组维数。

昏暗的表示以下维度:movmedian沿指定窗口滑动的方向操作。

考虑一个二维输入数组,一个

  • 如果Dim = 1,然后movmedian (k, 1)从第一列开始,垂直滑动到每一行。计算中位数k元素一次。然后移动到第二列并重复计算。此过程将继续进行,直到耗尽所有列。

  • 如果Dim = 2,然后movmedian (k, 2)从第一行开始,水平滑动每一列。计算中位数k元素一次。然后移动到第二行并重复计算。此过程将继续进行,直到耗尽所有行为止。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

条件,指定为以下值之一:

  • “includenan”——包括当计算中值时,从输入中获取值,从而产生输出

  • “omitnan”-忽略所有输入中的值。如果窗口只包含值,然后movmedian返回

名称-值参数

的可选逗号分隔对名称,值参数。的名字参数名称和价值对应的值。的名字必须出现在引号内。您可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:M = movmedian(A,k,'Endpoints','fill')

方法处理前窗口和后窗口,指定为逗号分隔的对,由“端点”和以下其中之一:

“端点”价值 描述
“缩水” 缩小输入端点附近的窗口大小,以只包括现有元素。
“丢弃” 当窗口与现有元素没有完全重叠时,不要输出任何中位数。
“填满” 用替换不存在的元素
数字或逻辑标量 用指定的数字或逻辑值替换不存在的元素。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串

计算中位数的样本点,指定为逗号分隔的对,由“SamplePoints”还有一个向量。样本点表示数据所在的位置一个.采样点不需要均匀采样。默认情况下,样本点向量为1 2 3…]

移动窗口是相对于样本点定义的,这些样本点必须被排序并包含唯一的元素。例如,如果t那么,乘以向量是否对应于输入数据movmedian(兰德(1 10)3,SamplePoints, t)是否有一个表示时间间隔的窗口-1.5 t(我)而且t(我)+ 1.5

当样本点向量有数据类型时datetime持续时间,则移动窗口长度必须有类型持续时间

如果样本点间隔不均匀“端点”如果指定了名称-值对,则其值必须为“缩水”

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|datetime|持续时间

扩展功能

C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。

在R2016a中引入