n.动,动
的移动中值。
库::`工程师`
语法
函数调用
-
[参数:M]=movmedian(___,[参数:nanflag])-确定是否包括或排除值南到阵列[参数:A]. 例如,movmedian(A,k,"omitnan")忽略值南计算每个中值时。 默认情况下movmedian包括值南.
-
[参数:M]=movmedian(___,Name,Value)-使用一个或多个名称-值参数为移动中位数设置其他参数。 例如,如果x是时间值的向量,则movmedian(A,k,"SamplePoints",x)计算相对于时间值的移动中位数x.
争论
输入参数
# 一个 — 输入数据
+
向量资料 | 矩阵 | 多维数组
Details
输入指定为向量、矩阵或多维数组的数据。
| 数据类型 |
|
# *[kb kf]*是 方向窗口的长度
+
双元素向量是一个字符串
Details
方向窗口的长度,设为包含两个元素的字符串向量。 如果 kb 和 kf -正整数,计算由 kb+kf+1 的元素。 计算包括在当前位置的元素, kb 到当前位置的元素和 kf 当前位置之后的项目。
例如, movmedian(A,[2 1]) 计算局部四点中位数的值数组。
# 昏暗 — 执行操作所遵循的维度
+
正整数标量
Details
执行操作的维度被指定为正整数标量。 如果未指定维度,则默认使用数组的第一个维度,其大小不等于 1.
论点 昏暗 指定执行函数的维度 movmedian,即指定窗口移动的方向。
考虑输入矩阵 A 大小 m 上 n:
-
movmedian(A,k,1)计算移动中位数k每列的元素A并返回大小的矩阵m上n. -
movmedian(A,k,2)计算移动中位数k矩阵每行的元素A并返回大小的矩阵m上n.
名称-值输入参数
指定格式中的可选参数对 名称,值,在哪里 姓名 -参数的名称,以及 价值 -适当的值。 名称-值参数应该放在其他参数之后,但对的顺序无关紧要。
使用逗号分隔名称和值,以及 姓名 把它放在引号里。
例子: M=movmedian(A,k,"端点","填充").
# 端点 — 一种处理端点附近窗口的方法
+
"收缩" (默认情况下)| "丢弃" | "填充" | 标量,标量
Details
处理端点附近窗口的方法,由以下选项之一指定:
| 意义 | 资料描述 |
|---|---|
|
减小输入数据端点附近的窗口大小,以仅包含现有元素。 |
|
如果窗口未完全重叠现有元素,则不显示任何中值。 |
|
将不存在的元素替换为 |
|
用指定的数字或逻辑值替换不存在的元素。 |
例子:
矢量的中心移动中值
Details
计算行向量的三点居中移动中值。 如果数组末尾的窗口中少于三个元素,则计算可用元素的平均值。
import EngeeDSP.Functions: movmedian
A = [4 8 6 -1 -2 -3 -1 3 4 5]
M = movmedian(A,3)
1×10 Matrix{Float64}:
6.0 6.0 6.0 -1.0 -2.0 -2.0 -1.0 3.0 4.0 4.5
矩阵的移动中值
Details
为矩阵的每一行计算三点居中的移动中值。 窗口从第一行开始,水平滑动到行尾,然后移动到第二行,依此类推。 维度参数是两个,它允许您在矩阵的列中滑动 A.
A = [4 8 6; -1 -2 -3; -1 3 4]
3×3 Matrix{Int64}:
4 8 6
-1 -2 -3
-1 3 4
import EngeeDSP.Functions: movmedian
M = movmedian(A,3,2)
3×3 Matrix{Float64}:
6.0 6.0 7.0
-1.5 -2.0 -2.5
1.0 3.0 3.5