A dataset of winter sea surface temperature (SST) anomalies has been derived from the Comprehensive Ocean-Atmosphere Data Set (COADS), using the 1-by-1 deg. SST product from the period 1960-1997.
You may download the data here (netcdf, gzip'ed). The winter season has here been defined as the period November-April (inclusive). The first winter is Nov. 60-Apr 61, and the last (37th) winter is Nov. 96-Apr 97.
The data processing, which is described in Section 2 in Melsom et al., 2001 (gzip'ed pdf file), requires a minimum data coverage in time. If certain criteria are not met for a grid cell, the data are discarded for this cell. However, data are also extrapolated from "wet" cells, within a limit radius. Cells which are based on extrapolation may be discarded by multiplication of the variable sst_mask(x,y). For a brief introduction to the present data processing, and some examples, look here, and a comparison with a remote sensing product is provided here.
Below is a printout of the netcdf file header:
netcdf coads_sst_winter { dimensions: lon = 360 ; lat = 180 ; month = 6 ; time = UNLIMITED ; // (37 currently) variables: int time(time) ; time:long_name = "Time" ; time:units = "year" ; int month(month) ; month:long_name = "Month" ; month:units = "month" ; month:first_month = 11 ; month:first_month_txt = "first winter month (1: January, ..., 12: December)" ; month:last_month = 4 ; month:last_month_txt = "last winter month (1: January, ..., 12: December)" ; float lon(lon) ; lon:long_name = "Longitude" ; lon:units = "degrees_east" ; float lat(lat) ; lat:long_name = "Latitude" ; lat:units = "degrees_north" ; int sst_mask(lat, lon) ; sst_mask:long_name = "Sea surface temperature, climatology mask" ; sst_mask:mask_txt = "=1: wet node (as defined by the global attribute\"fraction_clim\"), =0: filled node" ; float sst_climatology(month, lat, lon) ; sst_climatology:long_name = "Sea surface temperature anomaly, monthly climatology" ; sst_climatology:missing_value = -1.e+10f ; sst_climatology:units = "deg. Celsius" ; float sst_anom(time, lat, lon) ; sst_anom:long_name = "Sea surface temperature, winter anomaly by years" ; sst_anom:missing_value = -1.e+10f ; sst_anom:units = "deg. Celsius" ; // global attributes: :title = "Comprehensive Ocean-Atmosphere Data Set (COADS) Winter SST" ; :source = "NOAA-CIRES Climate Diagnostics Center" ; :method = "Winter SSTs, filled using SOR for Laplacian" ; :author = "Dr. Arne Melsom, Norwegian Meteorological Institute" ; :email = "arne.melsom@dnmi.no" ; :grid = -259.5f, -89.5f, 1.f, 1.f, 0.f, 0.f ; :fraction_clim = 0.5f ; :fraction_clim_txt = "fraction of occurence in all winter months, required for inclusion in seasonal cycle fields" ; :fraction_one = 0.8f ; :fraction_one_txt = "fraction of occurence in at least one winter month,required in initial land-sea gridding (see fulfil2_txt)" ; :fraction_min = 0.7f ; :fraction_min_txt = "fraction of occurence in at least one winter month, the grid will ultimately be wet if close to a truly wet grid for (at least) one winter month for all years (see radius_txt)" ; :fulfil2 = 1 ; :fulfil2_txt = "flag for requiring one (=0) or both (=1) of the criteria associated with fraction_clim/fraction_one to be satisfied for the initial land-sea grid" ; :radius = 1 ; :radius_txt = "maximum distance in grids to a truly wet grid from a dry, potentially wet, grid (see fraction_min_txt)" ; :radius_clim = 3 ; :radius_clim_txt = "maximum distance in grids to a non-masked climatology node grid from a dry, potentially wet, grid (see fraction_min_txt)" ; :eliminate = 1 ; :eliminate_txt = "no. of years to exclude from computation of seasonal cycle, as determined by to high intraseasonal variability" ; :scans = 51 ; :scans_txt = "maximum no. of iterations in Laplacian SOR for filling dry domain" ; :relax_coeff = 1.6f ; :relax_coeff_txt = "SOR coefficient (should be between 1.2 and 2.0)" ; :SOR_cnvrgnce = 1.e-04f ; :SOR_cnvrgnce_txt = "Number used in SOR convergence test (about 4 orders of magnitude down from data)" ; }