interp1 question for resampling

5 次查看(过去 30 天)
I am trying to use interp1 to resample my data. I have the values of forces for different timeframe lengths. (eg. I have 4 trials, trial one has 36 frames, trial 2 has 43, trial 3 has 38, tria4 has 35). To compare them have a nice figure, I want to <<expand>> the number of frames to 100 for each of them (like it would be 1-100% of the timeframe).
I used resample in the beginning, but I get some noise in the beginning and the end of the signal.
dif_Fx = (resample(dif(1:motion_length,1),100,motion_length))
(motion_length is the number of frames and dif is my signal)
I tried to use interp1 as
dif_Fx = (interp1((dif(1:motion_length,1)),1:1:100));
dif_Fx is just the signal (dif), and the rest of the values, from motion_length+1 to 100 are NaN.
I have read again and again the documentation, but I can;t seem to understand how to modify it to get what I want.
Any help is much appreciated.

采纳的回答

Star Strider
Star Strider 2021-4-11
To prevent the NaN results from being part of the interp1 output, specify an interpolation method and use the 'extrap' argument. See the function documentation for details.
  8 个评论
Andra Topan
Andra Topan 2021-4-12
Thank you so much! This was really helpful.
It woked with minor tweaks.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Multirate Signal Processing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by