ERROR: Input data must be specified in column-vector format.
18 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I get the error 'Input data must be specified in column-vector format.' when trying to run the following code at the line of TriScatteredInterp. Does someone know how to solve this?
clear
clc
load '/work/uo0122/u253082/REF.mat'
weight = cos(REF_lat);
lat=linspace(1,180,84);
lon=linspace(1,360,180);
latrep = repmat(lat,180,1);
lonrep = repmat(lon,84,1);
lonrep = lonrep';
for yr = 1993%:2010;
yr
load(['/work/uo0122/u253082/Mat_Time/ssh_',num2str(yr),'.mat']);
ssh = ssh_int;
bad=find(isnan(ssh)==1);
ssh(bad)=[];
lon(bad)=[];
lat(bad)=[];
F1=TriScatteredInterp(lon,lat,ssh,'natural');
end
thanks, Michael
0 commentaires
Réponses (1)
Sara
le 11 Juin 2014
On the line where you have the error, check the sizes of the arrays with the command
[nrow,ncol] = size(your_array)
Then, if a vector has nrow = 1 and ncol > 1, use
your_array'
3 commentaires
Sara
le 11 Juin 2014
It means that the function is expecting arrays of coherent dimensions. Look into the function documentation to see what array is not coherent.
Note, this part will not work:
bad=find(isnan(ssh)==1);
ssh(bad)=[];
lon(bad)=[];
lat(bad)=[];
bad in an array of indexes in ssh, but lat and lon do not have the same dimension, so you can't do that.
Voir également
Catégories
En savoir plus sur Triangulation Representation dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!