Using interp1 to interpolate y values

Hi,
I am attempting to interpolate my y values array instead of my x values.
Data: (y : 35x1534 double) (x: 35x1 double) (ny= 35x46 double)
newy = interp1(y,x,ny);
Hoping to have an output which is
newy : 35x46 double
However it returns with dimension errors. Is it possible to interpolate my y values to my ny values or would this not be possible?
Thanks.

3 Comments

Why do you not have an x for every y? Wht are the ny values? Can you attach your matrices in a.mat file?
I dont know if it is possible but I am trying make y the same dimensions as ny and I thought I could perhaps do this via interp1. I have attached the data.
I don't think interpolating is going to work for you. Interpolation requires your data cover the same range of values just sampled at different intervals. Besides both having 35 rows, I don't see any sort of overlap in your data.
Here's your Y data (35x1534)
Here's your NY data (35x46)

Sign in to comment.

 Accepted Answer

Since interpolating your data doesn't make sense to me, I suggest trying to downsample y instead.
idx46 = round(linspace(1,1534,46));
newy = y(:,idx46)

More Answers (0)

Tags

Asked:

on 3 Mar 2019

Commented:

on 4 Mar 2019

Community Treasure Hunt

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

Start Hunting!