Я читаю данные из URL, анализирую их, а затем пытаюсь форматировать данные далее:
year = 2008;
month = 9;
day = 30;
raw = urlread(sprintf('http://www.wunderground.com/history/airport/KCVS/%i/%i/%i/DailyHistory.html?HideSpecis=0&theprefset=SHOWMETAR&theprefvalue=0&format=1',year,month,day));
data = textscan(raw,'%s %s %s %s %s %s %s %s %s %s %s %s','Delimiter',',','HeaderLines',2,'CollectOutput',true);
dir = data{1}(1:end-1,7);
wind = cellfun(@str2num,data{1}(1:end-1,8),'UniformOutput',false);
gust = cellfun(@str2num,data{1}(1:end-1,9),'UniformOutput',false);
wind{cellfun(@isempty,wind)} = 0;
gust{cellfun(@isempty,gust)} = 0;
Теперь wind{cellfun(@isempty,wind)} = 0;
работает, однако gust{cellfun(@isempty,gust)} = 0;
нет, вместо этого я получаю эту ошибкучто говорит: ???В правой части этого присваивания слишком мало значений, чтобы удовлетворять левой части .cellfun(@isempty,gust)
правильно возвращает логический массив.Также gust{1} = 0
будет работать. Почему это работает на ветер, а не на порыв?