主要内容

movmedian

移动平均

描述

例子

M = movmedian (一个k返回一个本地数组k-point中值,其中每个中值是在一个长度的滑动窗口上计算的k穿过相邻元素一个.当k为奇数时,窗口围绕当前位置的元素居中。当k是偶数时,窗口以当前和以前的元素为中心。当没有足够的元素填充窗口时,窗口大小会在端点处自动截断。当窗口被截断时,中值仅占填充窗口的元素。大小是一样的吗一个

  • 如果一个是向量吗movmedian作用于向量的长度。

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

例子

M = movmedian (一个(kb kf)计算具有长度窗口的中值kb + kf + 1它包括当前位置的元素,kb元素向后,kf元素。

例子

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

例子

M = movmedian (___nanflag指定是包含还是省略为任何前面语法计算的值。movmedian (k ' includenan ')包括所有值的计算whilemovmedian (k ' omitnan ')忽略它们,在更少的点上计算中值。

例子

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

例子

全部折叠

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

A = [4 8 6 -1 -2 -3 -1 3 4 5];M = movmedian (3)
M =1×106.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 = movmedian(A,[2 0])
M =1×104 6 6 6 -1 -2 -1 3 4

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

A = [4 8 6;1 2 3;1 3 4]
一个=3×34 8 6 -1 -2 -3 -1 3 4
M = movmedian (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 = movmedian (3)
M =1×106.0000 NaN NaN -2.000 NaN NaN 4.0000 4.5000

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

M = movmedian (3“omitnan”
M =1×106.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];(3) k =小时;T = datetime(2016,1,1,0,0) + hours(0:5)
t =1 x6 datetimecolumn 4 to 6 01-Jan-2016 03:00:00 01-Jan-2016 04:00:00 01-Jan-2016 05:00:00
M = movmedian (k“SamplePoints”, t)
M =1×66.0000 6.0000 -1.0000 -2.0000 -2.5000

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

A = [4 8 6 -1 -2 -3 -1 3 4 5];M = movmedian (3“端点”“丢弃”
M =1×86 6 -1 -2 -1 3 4

输入参数

全部折叠

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

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

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

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

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

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

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

昏暗的表示movmedian沿着指定窗口的滑动方向操作。

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

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

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

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

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

  • “includenan”——包括当计算中值时,从输入的值,导致输出

  • “omitnan”——忽略所有值。如果一个窗口只包含值,然后movmedian返回

名称-值对的观点

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

例子:M = movmedian (k“端点”、“填补”)

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

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

数据类型:||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