Info

Diese Frage ist geschlossen. Öffnen Sie sie erneut, um sie zu bearbeiten oder zu beantworten.

How can I interpolate

1 Ansicht (letzte 30 Tage)
Gustavo Caldeira
Gustavo Caldeira am 13 Jul. 2017
Geschlossen: MATLAB Answer Bot am 20 Aug. 2021
Hi everybody I'm trying to create some tools to help analyze my measurements and I need some help. Here's my problem: Sometimes I measure some variables with different frequencies for instance, 2 and 5Hz, and now I want to interpolate the variable with the least row numbers in order to make this variable with the same row numbers as the variable with the most row numbers. I want this tool to automatically "recognize" which variables have less number, interpolate them and finally assign them to original variable with the interpolated values. Any suggestions? Thanks!

Antworten (1)

dbmn
dbmn am 14 Jul. 2017
Try to include some of the following functions in your code
numel(x)
% This allows you to "count" the number of elements in your variable
numel(x(:,1)); numel(x(1,:))
% use that if you just want to count the number of element in a row or column vector of your data
And for the interpolation part use
x_new_short = x_long;
y_new_short = interp1(x_short, y_short, x_new_short);
So basically what you want to do is
  1. Figure out which Element is longer/shorter using numel
  2. Interpolate the shorter element to the long size using interp1
Try to write your own code and post it here, if you are still having trouble...

Community Treasure Hunt

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

Start Hunting!

Translated by