Error using griddedInterpolant. The grid vectors must contain unique points

I get the error "Error using griddedInterpolant. The grid vectors must contain unique points"
My script is:
%interpolating modelled at observed depth
for j = 1:length(time_obs)
T_subsurf_mod(:,j) = interp1(depth_act(:,j),T_ice(:,j),depth_obs(:,j));
end
T_subsurf_mod and depth_obs are both 11x8784 double and depth_act is a 201x8784 double.
I have tried using the function "unique" on my input but does not work.

1 Commento

Well, the error message is pretty explicit and seeing your code doesn't really help us with that in any way! What do you mean by using unique 'doesn't work'?

Accedi per commentare.

 Risposta accettata

Hello Nina,
If you still need help with this, please contact MathWorks Technical Support here: https://www.mathworks.com/support/contact_us/
Please be sure to provide a detailed description of the issue and attach any relevant files / code / examples required to investigate the issue.

3 Commenti

Would you be able to tell us how you solved it? I'm getting the same issue.
Justin, what happened when you used code along the lines of what I suggested?

Accedi per commentare.

Più risposte (1)

%interpolating modelled at observed depth
for j = 1:length(time_obs)
[~, uidx] = unique(depth_act(:,j));
T_subsurf_mod(:,j) = interp1( depth_act(uidx,j), T_ice(uidx,j), depth_obs(:,j) );
end

Categorie

Scopri di più su Interpolation in Centro assistenza e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by