Interpolate big array to match length of smaller array?
古いコメントを表示
I am trying to do some array math, but my arrays are different sizes. I tried to interpolate the larger array, tau, (13795 x 1) to match the length of the smaller one, rho, (105 x 1). Neither data set is linear. I tried to do 1D interpolation with interp1(...) function but got the following error: "error using GriddedInterpolant The grid vectors do not define a grid of points that match the given values"
My end goal is to get the longer tau array to be (105 x 1).
6 件のコメント
jonas
2018 年 9 月 25 日
How did you use interp1?
Marissa Menzel
2018 年 9 月 25 日
Jake Gonzalez
2018 年 9 月 25 日
Are tau and rho different sizes because they are being sampled at different rates?
Correct me if I am wrong, but wouldn't you need to know the meaning of each values index in order to appropriately interpolate one data-set relative to the other?
jonas
2018 年 9 月 25 日
rho and tau are functions of what? Some x vector I assume?
Marissa Menzel
2018 年 9 月 25 日
jonas
2018 年 9 月 25 日
Measured over what? Over time? Over a geometry? Why are they different size?
回答 (1 件)
You need an x vector for interp.
tau_new=interp1(X_tau,tau, X_rho)
tau_new is the interpolated vector
2 件のコメント
Marissa Menzel
2018 年 9 月 25 日
Can you upload and describe the data? You said you got the data from a table. What does the row number of the table represent? Is there a time associated with the values or perhaps a geometry? rho and tau must surely be functions of something right? Unless of course they are repeated measurements to get a measure of their distributions. In this case it is however senseless to interpolate.
Anyway, I am not supposed to figure it out.
カテゴリ
ヘルプ センター および File Exchange で Interpolation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!