I have a problem with missing data in my dataset. My dataset is timeseries which contains x,y coordinates. I'd like to extrapolate missing values and use the assumption that I know speed and direction before missing values and speed and direction after missing values.
This is the approach I used to impute missing values in IMU (Inertial Measurement Unit) data:
- Build trajectory matrix out of time-series
- Run the missing value imputation algorithm from the TFOCS library (MATLAB)
- Extract the time-series from the filled trajectory matrix
The function you want to use is the Nuclear Norm Minimization for missing value imputation for matrices. The assumption is that the values are missing at random and the matrix is low-rank (the case for many real-world data).
The only important parameter to tune is the window length. The bigger - the better, but at the computation expense. Bigger window captures more information.
The results were pretty impressive for our IMU data (acceleration, radial acceleration, magnetometer and quaternion data). It did not work well if the missing data came in large contiguous blocks.
You can assume a constant acceleration...
V0=Initial Velocity VF= Final Velocity t= time elapsed a=(Vf-V0)/t
Then use the same equation but that constant acceleration to solve for the velocity at each interpolated timepoint:
Perhaps instead you do not want to make that assumption, you want to guess a "transition" from some set of observed transitions. Then you will need to give a more detailed description of the data.