1-D interpolation along specified dimension

Hello, I have a tall 2-D matrix 6037500x44. I want perform an interpolation of all the 6037500 rows, using the 44 sample points and 301 query points. It is basically a 1-D interpolation along the second dimension. A for-loop row-by-row lasts forever. Can anybody suggest a more efficient way? Thanks!

 Akzeptierte Antwort

dpb
dpb am 10 Feb. 2017

1 Stimme

Not sure who's the independent x value but seems like the vectorized form should work
xout=interp1(x,data.',xq);
where x is the independent variable range commensurate with the range of the data over the 44 columns consistent with xq, the 301-length interpolating points.

2 Kommentare

Giorgio Trumpy
Giorgio Trumpy am 13 Feb. 2017
This is exactly what I was looking for. Thanks a lot, Giorgio
Serge
Serge am 14 Apr. 2022
What if its 3rd or higher dimentions? Is there ay way to avoid using permute, since its a bit ugly.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Interpolation finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 10 Feb. 2017

Kommentiert:

am 14 Apr. 2022

Community Treasure Hunt

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

Start Hunting!

Translated by