How to do interpolation of an unevenly sampled matrix?

3 次查看(过去 30 天)
I have a data in the form of a matrix (88x3). It is not evenly sampled, how can I do interpolation on it so that it becomes evenly sampled. I need to perform low pass filtering on this data. Any help would be greatly appreciated.
  2 个评论
NIHARIKA
NIHARIKA 2014-7-24
these are the readings of an acelerometer in the form of x, y and z axis. Therefore a matrix is formed of order 88x3 i.e having 88 rows and 3 columns of x, y and z respectively.

请先登录,再进行评论。

回答(1 个)

dpb
dpb 2014-7-25
And where is the time at which they were sampled from which to interpolate? Come on here, give us some help...
In general, you've got to have a timestamp vector of the same length as the data and then use interp1 with the desired times to create the interpolated series.
new=interp1(t,old,tnew);
where
old is your existing accel data, t is the aforementioned sampled time vector and tnew is the desired time vector.
doc interp1 % for the details of interpolation types to use...
  4 个评论
NIHARIKA
NIHARIKA 2014-7-26
Is it possible to use this data and pass it through a low pass filter without interpolation. and how can i determine the sampling frequency from this data?
dpb
dpb 2014-7-26
编辑:dpb 2014-7-26
All you can do is the average of the number of samples over the total period; you have no more information to do anything else. That still has up to almost 2 minutes total uncertainty in the time duration (if the first were the last second of that minute and the last the first in the ending minute). All in all, you have very little time information at all, really, in terms of sample rates. Probably the best estimate you can get will be to throw out the first and last minutes and then use the remaining number of samples over that time interval.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Interpolation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by