Hi,
I have a vector with 1500 rows, and I am trying to down-sample this using interp1 like this:
downsampled = interp1([1:length(original)],original,1:1:100);
However, it looks like the output "downsampled' is just a copy of the first 100 rows of original. Any hints on this?
Cheers

 Réponse acceptée

Walter Roberson
Walter Roberson le 8 Jan 2016

0 votes

oL = length(original);
downsampled = interp1(1:oL, original, linspace(1,oL,100));
However please think about whether you want 100 points output or 101 points output. If you want to divide into 100 segments of equal length then you want 101 points output.

1 commentaire

PPM
PPM le 8 Jan 2016
Thanks Walter. Indeed, I need 101 points. Regards

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by