% Purpose % Read the HadSST2 ascii data file from the BADC % These are SST anomalies, in deg C lon = [-177.5:5:177.5]; lat = [87.5:-5:-87.5]'; SST_array = NaN*ones(156,12,36,72); fid = fopen('HadSST2_SST_1850_onwards.htm','r'); yr=0; for year = 1850:2005 yr = yr+1 for mon = 1:12 % mon % get single header line tline = fgetl(fid); head = textscan(tline,'%d%d%d%s%d%s'); mon_ck = cell2mat(head(1)); year_ck = cell2mat(head(2)); if (mon_ck ~= mon | year_ck ~= year) then error('header messed up') end for n = 1:36 tline = fgetl(fid); [b,count] = sscanf(tline,'%f',72); if count ~= 72 error('could not read whole row of data') end SST_array(yr,mon,n,:) = b'; end end end SST_array(SST_array<-99) = NaN;