Error using interp1 on MATLAB R2015b for Mac
Mostra commenti meno recenti
Hi! I am a newbie on matlab trying to interpolate temp & pressure profile data and its getting the error:
Error using griddedInterpolant
The coordinates of the input points must be finite values; Inf and NaN are not permitted.
Error in interp1 (line 161)
F = griddedInterpolant(X,V,method);
Error in RSatto (line 30)
pressI = interp1(A(~nanx),B(~nanx),x,'nearest','extrap');
This is my code:
clear; clc;
%cd /Users/Rosinha/Documents/GoBLE/Dados&Resultados/GoBLE-ATTO_RS-2015/ProfessoraRosa/ATTO/ATTO_alterados/ATTO;
pwd
%raw = dir('2015*.dat');
%x=(0:50:30000)'; %Intervalo usado para Interpolação
grd = 180 ./ 3.141593; rad = 3.141593 ./ 180;
Dz=50;
g=9.8;
%%Lendo arquivos *.dat
atto = load('201510311100.dat');
%%****** Formato *******
% alt(m) press(hPa) T(oC) RH(%) Td(oC) Tvi(oC) densidade(kg/m3) ff(m/s) dd(o)
% uvel(m/s) vvel(m/s)
alt = atto(:,1); %press = atto(:,2); T = atto(:,3); RH = atto(:,4);
%Td = atto(:,5); Tvi = atto(:,6); densidade = atto(:,7);
%ff = atto(:,8); dd = atto(:,9); uvel = atto(:,10); vvel = atto(:,11);
%%******* Interpolação *******************
x=(0:50:numel(alt))'; %intervalo de interpolação
%x=(0:50:3500)'
C = unique(atto(:,1:2),'rows');
nanx=isnan(C(:,2));
A=C(:,1);
B=C(:,2);
pressI = interp1(A(~nanx),B(~nanx),x,'nearest','extrap');
I typed "dbstop if naninf"and got the following msg:
NaN/Inf breakpoint hit for fullfile.p on line 28.
29 persistent fileSeparator;
29 persistent fileSeparator;
I have no idea what I'm doing wrong! Could someone help me? Thanks!
Risposta accettata
Più risposte (2)
Chad Greene
il 18 Ago 2017
What do you get if you type
sum(A(~nanx))
I have a feeling there are some NaNs in there. Perhaps the line just above it should be
nanx=isnan(C(:,1));
1 Commento
Rosa Santos
il 19 Ago 2017
Rosa Santos
il 22 Ago 2017
0 voti
2 Commenti
Torsten
il 22 Ago 2017
The error message clearly states that the vector A is not strictly increasing as it should be, i.e.
A(i) < A(i+1) for i=1,...,numel(A)-1.
So you will have to sort A first and rearrange B accordingly.
Best wishes
Torsten.
Walter Roberson
il 22 Ago 2017
You seem to have overlooked my comment to my answer, where I do a sort
Categorie
Scopri di più su Graphics Performance 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!