What is the solution for "Error using griddedInterpolant The grid vectors must contain unique points."

3 次查看(过去 30 天)
Hi,
I need to interpolate the data of 243 frame into 51 frame which 0 to 100%. However, the result shows
"Error using griddedInterpolant The grid vectors must contain unique points."
I'm not sure how to solve the error and what is the meaning of unique points.
Thank you in advance.
X=xlsread('JRF DATA 10DEG.xlsx',1,'J4:M243');
% Make original data
oldPcntValsx = X(:,1) ;
oldXvals = X(:,2) ;
% Set a new spacing from 0 to 1 and interpolate
newPcntValsx = 0:2:100;
newXvals = interp1(oldPcntValsx, oldXvals, newPcntValsx);
newX = newXvals(:);
% Make original data
oldPcntValsy = X(:,1) ;
oldYvals = X(:,3) ;
% Set a new spacing from 0 to 1 and interpolate
newPcntValsy = 0:2:100;
newYvals = interp1(oldPcntValsy, oldYvals, newPcntValsy);
newY =newYvals(:);
% Make original data
oldPcntValsz = X(:,1) ;
oldZvals = X(:,4) ;
% Set a new spacing from 0 to 1 and interpolate
newPcntValsz = 0:2:100;
newZvals = interp1(oldPcntValsz, oldZvals, newPcntValsz);
newZ = newZvals(:);
N2 = [newX,newY,newZ];

采纳的回答

Dana
Dana 2020-9-8
You're interpolating based on the gridpoints located in column J of your Excel file. Each gridpoint must be unique (i.e., different from every other gridpoint), but J188 = J189. That's why you're getting an error.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Interpolation 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by