fillmissing

Substitui valores ausentes (NaN) por interpolação, constante ou vizinho.

Categoria: Language Fundamentals > Data Types

Sintaxe

B = fillmissing(A, 'linear')

Preenche lacunas por interpolação linear entre os valores válidos mais próximos.

B = fillmissing(A, 'constant', v)

Substitui as entradas ausentes pelo valor v.

B = fillmissing(A, method)

Outros métodos: 'previous', 'next', 'nearest'.

[B, TF] = fillmissing(___)

Também retorna um array lógico marcando as posições preenchidas.

Descrição

Um valor é considerado ausente quando é NaN (em dados numéricos). 'linear' traça uma reta entre os pontos válidos mais próximos de cada lado da lacuna, 'previous' repete o último valor válido, 'next' usa o seguinte e 'nearest' usa o mais próximo.

Uma lacuna na borda dos dados tem vizinho válido de um lado apenas, então 'linear' não consegue interpolar ali.

Argumentos de entrada

A
Vetor, matriz ou tabela. Uma matriz é processada coluna a coluna.
method
'linear', 'previous', 'next', 'nearest' ou 'constant'.
v
Valor de preenchimento, obrigatório com 'constant'.

Argumentos de saída

B
Array do mesmo tamanho de A com as lacunas preenchidas.
TF
Array lógico, verdadeiro onde um valor foi preenchido.

Exemplo

Preenchendo NaN

x = [1 NaN 3 NaN NaN 6];
fillmissing(x, 'linear')
fillmissing(x, 'previous')
fillmissing(x, 'constant', 0)
Saída
ans = 1×6

     1     2     3     4     5     6
ans = 1×6

     1     1     3     3     3     6
ans = 1×6

     1     0     3     0     0     6

Veja também

ismissing rmmissing standardizeMissing isnan interp1 movmean