misdata
Reconstruct missing input and output data
Syntax
Datae = misdata(Data)
Datae = misdata(Data,Model)
Datae = misdata(Data,MaxIterations,Tol)
Datae = misdata(___,Name,Value)
Description
Datae = misdata(Data)
reconstructs missing input and output time-domain
data.
Data
contains time-domain data, which can be in the form of a
timetable
, a comma-separated pair of
numeric matrices, or a time-domain iddata
object.
Missing data samples (both in inputs and in outputs) are expressed as
NaN
s. Datae
, which is the same form as
Data
, contains the reconstructed data set where the missing
data has been replaced by reasonable estimates.
Datae = misdata(Data,Model)
specifies a
model used for the reconstruction of missing data. Model
is
any linear identified model (idtf
, idproc
, idgrey
, idpoly
, idss
).
If no suitable model is known, it is estimated in an iterative fashion
using default order state-space models.
Datae = misdata(Data,MaxIterations,Tol)
specifies maximum number of
iterations and tolerance. MaxIterations
is the maximum number of
iterations carried out (the default is 10). The iterations are terminated when the
difference between two consecutive data estimates differs by less than
Tol
%. The default value of Tol
is
1
.
Datae = misdata(___,
uses additional model options specified by one or more name-value arguments. Name,Value)
The available arguments consist of:
InputName
andOutputName
— Input and output channel names. Use these arguments especially whendata
is a timetable that has more variables than you want to use, or when there. Also useOutputName
to identify the output channels when the timetabledata
contains more than one output variable. Otherwise, the software interprets only the last variable as an output channel.For example, specify the input and output signal variable names using
Datae = misdata(data,'InputName',["u1","u3"],'OutputName',"y1")
. You can use this syntax with any of the previous input-argument combinations.Ts
andTimeUnit
— Sample time and time units. Use these arguments especially when you aredata
contains numeric matrices, which do not provide sample-time information.
Examples
Algorithms
For a given model, the missing data is estimated as parameters so as to minimize the output prediction errors obtained from the reconstructed data. See Section 14.2 in Ljung (1999). Treating missing outputs as parameters is not the best approach from a statistical point of view, but is a good approximation in many cases.
When no model is given, the algorithm alternates between estimating missing data and estimating models, based on the current reconstruction.