主要内容

fillmissing

填补缺失值

描述

例子

F= fillmissing (一个“常数”,v)填充缺失的条目数组或表的常数值v。如果一个是一个矩阵或多维数组,然后呢v可以是一个标量或矢量。当v是一个向量,每个元素指定填充对应的列的值一个。如果一个是一个表或时间表吗v也可以是单元阵列的元素包含填补值为每个表变量。

缺失值定义的数据类型一个:

  • - - - - - -,,持续时间,calendarDuration

  • NaT- - - - - -datetime

  • <失踪>- - - - - -字符串

  • <定义>- - - - - -分类

  • ' '- - - - - -字符

  • {"}- - - - - -细胞的字符数组

如果一个是一个表,然后每一列的数据类型定义的缺失值列。

例子

F= fillmissing (一个,方法)使用指定的方法填充缺失的条目方法。例如,fillmissing (A,“之前”)填充缺失与先前non-missing条目的条目一个

例子

F= fillmissing (一个,movmethod,窗口)填充缺失的条目使用移动窗口的意思或中值与窗口长度窗口。例如,fillmissing (“movmean”, 5)填充数据与移动平均使用窗口长度为5。

例子

F= fillmissing (一个,fillfun,gapwindow)填补空白的失踪条目使用自定义指定一个函数处理方法fillfun和一个固定的窗口周围的每个缺口的填补值计算。fillfun必须输入参数xs,ts,tq操作,包含示例数据的向量xs的长度gapwindow样本数据的位置ts的长度gapwindow,缺失数据的位置tq操作。的位置tstq操作采样点向量的一个子集。

例子

F= fillmissing (___,昏暗的)指定的尺寸一个操作。默认情况下,fillmissing沿着第一个维度,其经营规模不等于1。例如,如果一个是一个矩阵,然后呢fillmissing (2)操作的列一个逐行,填补缺失的数据。

例子

F= fillmissing (___,名称,值)指定其他参数为填补缺失值使用一个或多个名称-值对参数。例如,如果t时间值是一个矢量,然后呢fillmissing (A,“线性”,“SamplePoints”, t)插入的数据一个相对于《纽约时报》t

例子

(F,特遣部队)= fillmissing (___)还返回一个逻辑数组对应的条目一个吃饱了。

例子

全部折叠

创建一个向量,其中包含值和替换每个与以前的non-missing价值。

一个=[1 3南4南南5];F = fillmissing (,“以前”)
F =1×71 3 3 4 4 4 5

创建一个2×2矩阵在每一列的值。填满One hundred.在第一列和1000年在第二列中。

一个=[1南;南2]
一个=2×21南南2
F = fillmissing (,“不变”1000年[100])
F =2×21 1000 100 2

使用插值替换在非均匀采样数据值。

定义一个向量的非均匀采样点和评估正弦函数在点。

:0 x = [4 * pi: 0.1, 0.1:0.2:4 *π);一个= sin (x);

注入值到一个

一个(< 0.75 & > 0.5)=南;

使用线性插值填补缺失的数据,并返回了向量F和逻辑向量特遣部队。值1 (真正的)的条目特遣部队对应的值F吃饱了。

(F, TF) = fillmissing (,“线性”,“SamplePoints”,x);

画出原始数据和填充数据。

情节(x,,“。”x (TF), F (TF),“o”)包含(“x”);ylabel (“sin (x)”)传说(“原始数据”,“填充缺失数据”)

图包含一个轴。轴包含2线类型的对象。这些对象代表原始数据,填补了缺失的数据。

使用一个移动的位数来填补缺失的数字数据。

创建一个采样点的向量x和一个向量的数据一个含有缺失值。

x = linspace (0, 10200);= sin (x) + 0.5 *(兰德(-0.5尺寸(x)));([1:10兰迪([1长度(x)], 1 50))) =南;

取代一个使用移动平均的窗口长度,和情节的原始数据和填充数据。

F = fillmissing (,“movmedian”10);情节(x, F,' r . - ',x,,“b -”)传说(“填充缺失数据”,“原始数据”)

图包含一个轴。轴包含2线类型的对象。这些对象代表了缺失数据,原始数据。

定义一个自定义函数值常数与以前的值。

定义一个向量的抽样点t和一个向量的对应数据一个包含值。图数据。

t = 10:10:100;=(0.9 0.6 - 0.7 0.1 0.2 0.3南南南1];情节(t),“o”)

图包含一个轴。轴包含一个类型的对象。

使用当地的函数forwardfill(定义的例子)常数与前面的填补缺失的空白值。函数处理的输入包括:

  • xs——数据值用于填充

  • ts-位置的值用于充填相对于采样点

  • tq操作——失踪的值相对于采样点的位置

  • n-值的数量来填补缺口

n = 2;gapwindow = (10 0);(F, TF) = fillmissing (A, @ (xs, ts, tq) forwardfill (xs, ts, tq, n), gapwindow,“SamplePoints”t);

窗口值的差距(10 0)告诉fillmissing失踪前需要考虑的一个数据点差距,没有数据点后,由于之前的常数的值是位于前10个单位的差距。函数处理输入值决定fillmissing第一的差距是:

  • x = 0.3

  • ts = 30

  • tq = 50 [40]

第二个缺口的处理函数的输入值是:

  • x = 0.7

  • ts = 70

  • tq = 80

画出原始数据和填充数据。

情节(t),“o”t (TF), F (TF),“罗”)

图包含一个轴。轴包含2线类型的对象。

函数ts, y = forwardfill (xs tq, n)%填补n值缺失的空白之前使用常数的值y =南(1,元素个数(tq));y (1: min(元素个数(tq), n)) = x;结束

创建一个矩阵与失踪的条目(第二维度)和填列一行一次使用线性插值。对于每一行,前导和尾随缺失值填充的最近的non-missing价值这一行。

= (NaN南5 3南5 7南9南;8 9南1 4 5南南5;南4 9 8 7 2 4 1 1南]
一个=3×10南南5 3南5 7南9南8 9南1 4 5南南5南南4 9 8 7 2 4 1 1
F = fillmissing (,“线性”2,“EndValues”,“最近的”)
F =3×105 5 5 3 4 5 7 8 9 9 8 9 5 1 4 5 5 5 5 5 4 4 9 8 7 2 4 1 1 1

填补缺失值表变量与不同的数据类型。

创建一个表包括的变量分类,,字符数据类型。

一个=表(分类({“阳光”;“多云”;})(66;南;54){;“N”;“Y”},(37;39;南),“VariableNames”,{“描述”“温度”“雨”“湿度”})
一个=3×4表描述温度雨湿度___________ ___________ __________ ________阳光66 {0 x0 char} 37多云南{' N '} 39 <定义> 54 {Y} NaN

替换所有失踪的条目的值从之前的条目。由于没有前一个元素变量,失踪的特征向量并不是取代。

F = fillmissing (,“以前”)
F =3×4表描述温度雨湿度___________ ___________ __________ ________阳光66 {0 x0 char} 37多云66 {' N '} 39多云54 {Y} 39

取代温度湿度变量一个用0。

F = fillmissing (,“不变”0,“DataVariables”,{“温度”,“湿度”})
F =3×4表描述温度雨湿度___________ ___________ __________ ________阳光66 {0 x0 char} 37多云0 39 {' N '} <定义> 54 {Y} 0

另外,使用isnumeric函数来识别数字变量操作。

F = fillmissing (,“不变”0,“DataVariables”@isnumeric)
F =3×4表描述温度雨湿度___________ ___________ __________ ________阳光66 {0 x0 char} 37多云0 39 {' N '} <定义> 54 {Y} 0

现在填补缺失值一个与指定为每个表常数变量,这是包含在一个单元阵列中。

F = fillmissing (,“不变”,{分类({“没有”}),1000,“未知”1000})
F =3×4表描述温度雨湿度………………________阳光66{‘未知’}37多云1000 {' N '} 39没有54 1000 {Y}

创建一个时间向量t在几秒钟内和一个相应的矢量数据一个包含值。

t =秒([2 4 8 17 98 134 256 311 1001]);一个= 100年[1 3 23日南南南南233];

填补缺失值一个相对应的最大差距大小250秒。自第二次差距大于250秒,值不是填满。

F = fillmissing (,“线性”,“SamplePoints”t“MaxGap”秒(250))
F =1×91.0000 3.0000 23.0000 25.7944 233.0000 50.9435 62.1210 100.0000南

输入参数

全部折叠

输入数据,指定为一个向量,矩阵,多维数组,表,或时间表。

当输入参数是一个单元阵列,它必须是一个单元阵列的特征向量。如果一个是一个时间表,然后只表值填充。如果相关的行乘以包含一个向量NaT值,然后fillmissing产生一个错误。行乘以必须独特而列按升序。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|细胞||时间表|分类|datetime|持续时间|calendarDuration

填补常数,指定为一个标量,矢量,或细胞数组。

v可以是一个向量时一个是一个矩阵或多维数组,表示一个不同的值为每个操作维度。的长度v必须匹配操作的长度尺寸。

v时可以填满值的单元阵列一个是一个表或时间表,表示不同的填充每个变量值。细胞数组中元素的个数必须匹配表中变量的数量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|细胞|分类|datetime|持续时间

填补方法,指定为以下之一:

方法 描述
“以前” 以前non-missing价值
“下一个” 下一个non-missing值
“最近的” 最近的non-missing价值
“线性” 邻近的线性插值,non-missing值(数值,持续时间,datetime数据类型)
样条的 分段三次样条插值(数字,持续时间,datetime数据类型)
“pchip” 一种保形分段三次样条插值(数字,持续时间,datetime数据类型)
“makima” 修改Akima立方埃尔米特插值(数字,持续时间,datetime数据类型)

移动的方法来填补缺失数据,指定为以下之一:

方法 描述
“movmean” 移动平均的窗口长度窗口(仅数字数据类型)
“movmedian” 移动平均的窗口长度窗口(仅数字数据类型)

例子:@ (xs, ts, tq) myfun (xs, ts, tq操作)

自定义填充方法,指定为一个函数处理。有效的处理函数必须包括以下三个输入参数:

输入参数 描述
xs 用于填充矢量包含数据值。的长度xs必须匹配指定窗口的长度。
ts 用于填充矢量包含位置的值。的长度ts必须匹配指定窗口的长度。ts是一个采样点的子集向量。
tq操作 向量含有缺失值的位置。tq操作是一个采样点的子集向量。

函数必须返回一个标量或矢量长度一样tq操作

窗口长度为移动方法,指定为一个正整数标量,双元素向量的正整数,一个积极的标量时间,或一个双元素向量积极的持续时间。相对于采样点定义的窗口。

窗口是一个正整数标量,那么窗口集中当前元素和包含呢窗口1相邻的元素。如果窗口是偶数,那么窗口集中有关当前和以前的元素。如果窗口是一个双元素向量的正整数f [b],那么窗口包含当前元素,b元素向后,f元素。

一个一个时间表或“SamplePoints”被指定为一个datetime持续时间向量,窗口必须的类型持续时间

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

空白窗口长度为自定义填充函数,指定为一个正整数标量,双元素向量的正整数,一个积极的标量时间,或一个双元素向量积极的持续时间。窗口定义相对于采样点的差距。

当指定一个函数处理fillfun填充方法的价值gapwindow代表一个固定窗长度,每个输入数据中的缺失值的差距。然后计算填充的值fillfun在那个窗口中使用的值。例如,对于默认的采样点t = 1:10和数据=(10 70南南南50 60 90 100],一个窗口长度gapwindow = 3指定第一个窗口(20南南50)fillfun作用于计算填充的值。第二个窗口的空白fillfun操作是(90年70年南)

一个一个时间表或“SamplePoints”被指定为一个datetime持续时间向量,窗口必须的类型持续时间

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

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

一个是一个表或时间表,昏暗的不支持。金宝appfillmissing分别运行在每个表或时间表变量。

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

  • 如果昏暗的= 1,然后fillmissing填满一个列的列。

  • 如果昏暗的= 2,然后fillmissing填满一个行,行。

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

名称-值对的观点

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

例子:fillmissing (A, DataVariables,{“温度”、“高度”})填充只有相对应的列温度高度变量的输入表
数据选项

全部折叠

采样点,指定为逗号分隔组成的“SamplePoints”和一个向量。采样点表示x设在位置的数据一个,必须进行排序和包含独特的元素。采样点不需要均匀采样。默认的采样点向量(1 2 3…)

请注意

这个名称-值对输入数据时不支持金宝app时间表。时间表总是使用行倍采样点的向量。要使用不同的采样点,您必须编辑的时间表,以便行乘以包含所需的采样点。

移动窗口定义相对于采样点。例如,如果t是一个向量乘以相应的输入数据,然后呢fillmissing(兰德(1 10)“movmean”, 3, SamplePoints, t)有一个窗口代表之间的时间间隔-1.5 t(我)t(我)+ 1.5

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

例子:fillmissing([1南3 4],“线性”,“SamplePoints”, [1 2.5 3 4])

数据类型:||datetime|持续时间

表变量操作,指定为逗号分隔组成的“DataVariables”在这个表的一个选项。的“DataVariables”值表示该变量的输入表来填补。没有指定表中的其他变量“DataVariables”通过输出不动手术。

选项 描述 例子
变量名

一个特征向量或标量字符串指定单个表变量名

“Var1”

“Var1”

向量的变量名

特征向量的单元阵列或字符串数组,其中每个元素是一个表变量名

{“Var1”“Var2”}

[" Var1”“Var2”)

标量或矢量变量指标

一个标量或矢量表变量指标

1

[1 3 5]

逻辑向量

逻辑向量的每个元素对应一个表变量真正的包括相应的变量不包括它

(真的假的真的)

函数处理

一个函数处理,表变量作为输入,并返回一个逻辑标量

@isnumeric

vartype下标

表生成的下标vartype函数

vartype(数字)

例子:fillmissing (T,“线性”,“DataVariables”, (“Var1”“Var2”“Var4”])

缺失值的选择

全部折叠

方法处理端点指定为逗号分隔组成的“EndValues”其中一个“extrap”,“以前”,“下一个”,“最近的”,“没有”标量值,或者一个常数。端点填补方法处理前导和尾随缺失值基于以下定义:

方法 描述
“extrap” 一样方法
“以前” 以前non-missing价值
“下一个” 下一个non-missing值
“最近的” 最近的non-missing价值
“没有” 没有填写价值
标量 恒定值(数值,持续时间,datetime数据类型)

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

失踪的指示器,指定为逗号分隔组成的“MissingLocations”和一个逻辑向量、矩阵或多维数组的大小一样一个。指示元素真正的来表示一个缺失值的相应位置一个否则。

数据类型:逻辑

最大差距大小,指定为一个数字标量,持续时间标量或calendarDuration标量。差距是集群连续失踪的值的大小是non-missing之间的距离值周围的空白。的差距大小是相对于采样点计算。差距小于或等于最大差距大小了,差距大于差距大小并不是。

例如,考虑向量y =[25南南100]使用默认的采样点(1 2 3 4)。缺口大小的矢量计算的采样点4 - 1 = 3,所以MaxGap的价值2叶子缺失的值没有改变,而一个MaxGap的价值3填写缺失的值。

缺失值的开始或者结束的数据:

  • 一个缺失值的输入数据的差距大小为0,总是填满。

  • 集群缺失值发生的开始或者结束输入数据并不是完全包围non-missing值,所以差距大小计算使用最近的现有的采样点。为默认的采样点1:N,这产生一个缺口大小是1小于如果相同的集群发生在中间的数据。

输出参数

全部折叠

填充数据,返回为一个向量,矩阵,多维数组,表,或时间表。F一样的尺寸吗一个

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|细胞||时间表|分类|datetime|持续时间|calendarDuration

填充数据指标,返回为一个向量,矩阵,或多维数组。特遣部队是一个逻辑数组1 (真正的)对应条目F吃饱了和0 ()对应于不变的条目。特遣部队一样的尺寸吗一个F

数据类型:逻辑

扩展功能

介绍了R2016b