主要内容

平滑数据

平滑噪声数据

描述

例子

B= smoothdata (一个使用启发式确定的固定窗口长度返回向量元素的移动平均值。窗口沿向量长度向下滑动,计算每个窗口中元素的平均值。

  • 如果一个是一个矩阵平滑数据计算每列下的移动平均值。

  • 如果一个是一个多维数组吗平滑数据沿大小不等于1的第一个维度操作。

  • 如果一个那么,表格或时间表是否带有数字变量平滑数据分别对每个变量进行操作。

例子

B= smoothdata (一个昏暗的沿维数作用昏暗的属于一个.例如,如果一个是一个矩阵smoothdata (2)平滑列表中每一行的数据一个

例子

B= smoothdata (___方法指定前面任一语法的平滑方法。例如,B = smoothdata (A,“sgolay”)使用萨维茨基-戈莱滤波器平滑数据一个

例子

B= smoothdata (___方法窗口指定平滑方法使用的窗口长度。例如,平滑数据(A,'movmedian',5)平滑中的数据一个通过取五个元素滑动窗口的中位数。

例子

B= smoothdata (___南旗指定如何对于任何前面的语法都将处理值。“奥米南”忽略了价值观和“includenan”在每个窗口内进行计算时包含它们。

例子

B= smoothdata (___名称,值指定使用一个或多个名称-值对参数进行平滑的附加参数。例如,如果t是一个时间值的向量吗smoothdata(“SamplePoints”,t)平滑中的数据一个相对于现在的时代t

例子

B窗口) = smoothdata (___还返回移动窗口的长度。

例子

全部折叠

创建一个包含噪声数据的向量,并使用移动平均值平滑数据。绘制原始数据和平滑数据。

x=1:100;A=cos(2*pi*0.05*x+2*pi*rand)+0.5*randn(1100);B=平滑数据(A);图(x,A,“o”, x、B“-x”)传说(“原始数据”“平滑数据”

图形包含一个轴。轴包含两个类型为line的对象。这些对象表示原始数据,平滑数据。

创建一个矩阵,其行代表三个噪声信号。使用移动平均线平滑三个信号,并绘制平滑数据。

x = 1:10 0;s1 = cos(2 * 0.03π* * x + 2 *π*兰德)+ 0.5 * randn (1100);s2 = cos(2 * 0.04π* * x + 2 *π*兰德)+ 0.4 * randn (1100) + 5;s3 = cos(2 *π* 0.05 * x + 2 *π*兰德)+ 0.3 * randn - 5 (1100);= (s1);s2;s3);B = smoothdata (2);情节(x, B (1:), x, B (2:), x, B (3,:))

图中包含一个坐标轴。轴线包含3个线型对象。

用高斯加权移动平均滤波器平滑噪声数据向量。显示过滤器使用的窗口长度。

x=1:100;A=cos(2*pi*0.05*x+2*pi*rand)+0.5*randn(1100);[B,窗口]=smoothdata(A,“高斯”);窗口
窗口=4

使用长度为20的较大窗口平滑原始数据。绘制两个窗口长度的平滑数据。

C = smoothdata (,“高斯”, 20);情节(x, B,“o”,x,C,“-x”)传说(“小窗”“大窗户”

图中包含一个坐标轴。轴线包含2个线型对象。这些对象代表小窗口,大窗口。

创建一个噪声矢量包含值,并平滑忽略数据,这是默认值。

A = [NaN randn(1,48) NaN randn(1,49) NaN];B = smoothdata(一个);

平滑数据,包括值。窗口中包含的平均值

C = smoothdata (,“includenan”);

把平滑的数据画进去BC

图(1:100,B,“o”1:10 0 C“-x”)传说(“忽略NaN”“包括楠”

图中包含一个坐标轴。轴线包含2个线型对象。这些对象表示忽略NaN,包括NaN。

创建一个与时间向量相对应的噪声数据向量t.平滑数据相对于时间t,并绘制原始数据和平滑数据。

x=1:100;A=cos(2*pi*0.05*x+2*pi*rand)+0.5*randn(1100);t=datetime(2017,1,1,0,0,0)+小时(0:99);B=smoothdata(A,“SamplePoints”t);情节(t),“o”t、B“-x”)传说(“原始数据”“平滑数据”

图形包含一个轴。轴包含两个类型为line的对象。这些对象表示原始数据,平滑数据。

输入参数

全部折叠

输入数组,指定为向量、矩阵、多维数组、表或时间表。如果一个是一个表或时间表,那么要么变量必须是数字,要么必须使用“DataVariables”名称-值对以显式列出数值变量。在处理也包含非数值变量的表时,指定变量非常有用。

数据类型:|单一的|int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|桌子|时间表

复数的支持:金宝app是的

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

考虑一个矩阵一个

B = smoothdata (1)平滑每个列中的数据一个

B = smoothdata (2)平滑列表中每一行的数据一个

一个是一张桌子或时刻表,昏暗的不支持。金宝app平滑数据分别对每个表或时间表变量进行操作。

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

平滑方法,指定为以下方法之一:

  • “movmean”-在每个窗口移动平均一个。此方法有助于减少数据中的周期性趋势。

  • “movmedian”-移动中值在每个窗口一个.这种方法对于在异常值存在时减少数据的周期趋势是有用的。

  • “高斯”的每个窗口的高斯加权移动平均一个

  • “洛维斯”线性回归的每个窗口一个. 这种方法的计算成本很高,但不连续性较少。

  • “黄土”的每个窗口的二次回归一个.这种方法在计算上比“洛维斯”

  • “rlowess”的每个窗口的稳健线性回归一个.这种方法是该方法的一个计算成本更高的版本“洛维斯”,但它对异常值更为稳健。

  • “rloess”的每个窗口的稳健二次回归一个.这种方法是该方法的一个计算成本更高的版本“黄土”,但它对异常值更为稳健。

  • “sgolay”-Savitzky-Golay滤波器,根据拟合在每个窗口上的二次多项式进行平滑一个. 当数据变化迅速时,这种方法比其他方法更有效。

窗口长度,指定为正整数标量、正整数的两元素向量、正持续时间标量或正持续时间的两元素向量。

窗口是正整数标量,则窗口以当前元素为中心并包含窗口1相邻的元素。如果窗口如果是偶数,则窗口将以当前和以前的元素为中心。如果窗口是一个正整数的二元向量吗f [b],则窗口包含当前元素,b元素向后,f元素前进。

一个有时间表或时间吗“SamplePoints”指定为日期时间持续时间向量,窗口必须是类型持续时间,并相对于采样点计算窗口。

当窗口长度也指定为输出参数时,输出值与输入值匹配。

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

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

  • “奥米南”——忽略值。如果一个窗口包含所有值,然后平滑数据返回

  • “includenan”-包括值在每个窗口内计算时,导致

名称-值对的观点

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

例子:smoothdata(“SmoothingFactor”,0.5)
数据选项

全部折叠

样本点,指定为逗号分隔对,由“SamplePoints”和一个向量。样本点代表x中的数据的轴位置一个,必须进行排序并包含唯一值。采样点不需要统一采样。默认采样点向量为[1 2 3…]

请注意

当输入数据为金宝app时间表.时间表总是使用行时间向量作为样本点。要使用不同的样本点,必须编辑时间表,以便行时间包含所需的样本点。

移动窗口是相对于样本点定义的。例如,如果t那么,时间向量是否与输入数据相对应呢smoothdata(兰德(1 10)3,SamplePoints, t)有一个窗口表示时间间隔t(i)-1.5t(i)+1.5

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

例子:平滑数据(T,'SamplePoints',0:0.1:10)

数据类型:|单一的|int8|int16|int32|int64|uint8|uint16|uint32|uint64|日期时间|持续时间

要操作的表变量,指定为逗号分隔对,由“DataVariables”这张表中有一个选项。的“DataVariables”值指示输入表中要平滑的变量。表中未指定的其他变量“DataVariables”通过到输出而不被操作。

选项 描述 例子
变量名

指定单个表变量名的字符向量或标量字符串

“Var1”

“Var1”

变量名向量

字符向量或字符串数组的单元格数组,其中每个元素是表变量名

{“Var1”“Var2”}

[" Var1”“Var2”)

可变指标的标量或向量

表变量索引的标量或向量

1

[1 3 5]

逻辑向量

逻辑向量,其每个元素对应一个表变量,其中真的包含相应的变量和不包括它

(真的假的真的)

函数处理

接受表变量作为输入并返回逻辑标量的函数句柄

@isnumeric

vartype下标

属性生成的表下标vartype功能

vartype(数字)

例子:smoothdata (T“DataVariables”[“Var1”“Var2”“Var4”])

平滑选项

全部折叠

窗口大小因子,指定为逗号分隔对,由“SmoothingFactor”从0到1的标量。一般来说,值“SmoothingFactor”通过缩放启发式窗口大小来调整平滑级别。接近0的值产生更小的移动窗口长度,导致更小的平滑。接近1的值产生更大的移动窗口长度,导致更平滑。在某些情况下,根据确定启发式窗口大小的输入数据,值“SmoothingFactor”可能不会对用户使用的窗口大小产生重大影响平滑数据

“SmoothingFactor”是默认的0.25,只能在什么时候指定窗口未指定。

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

萨维茨基-戈莱度,指定为逗号分隔对,由“学位”和非负整数。仅当“sgolay”为指定的平滑方法。价值“学位”对应于Savitzky-Golay过滤器中适合每个窗口内数据的多项式的次数,默认为2。

价值“学位”对于均匀采样点,必须小于窗长。对于非均匀采样点,该值必须小于任何窗口中的最大点数。

输出参数

全部折叠

输出数组,以向量、矩阵、多维数组、表或时间表的形式返回。B大小是一样的吗一个

窗口长度,返回为一个正整数标量、一个正整数的双元素向量、一个正持续时间标量或一个正持续时间的双元素向量。

窗口指定为输入参数,则输出值与输入值匹配。当窗口未指定为输入参数,则其值是由平滑数据基于输入数据。

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

算法

如果未指定平滑方法的窗口大小,平滑数据基于启发式计算默认窗口大小。对于平滑因子τ,启发式估计一个移动平均窗口大小,该窗口大小衰减约为输入数据能量的100*τ %。

扩展功能

介绍了R2017a