Translate data names in the ODF convention to similar names in the Oce convention.

  ODFunits = NULL,
  columns = NULL,
  debug = getOption("oceDebug")



Vector of strings holding ODF names.


Vector of strings holding ODF units.


Optional list containing name correspondances, as described for read.ctd.odf().


Optional list containing information on the data variables.


an integer specifying whether debugging information is to be printed during the processing. This is a general parameter that is used by many oce functions. Generally, setting debug=0 turns off the printing, while higher values suggest that more information be printed. If one function calls another, it usually reduces the value of debug first, so that a user can often obtain deeper debugging by specifying higher debug values.


A vector of strings.


The following table gives the regular expressions that define recognized ODF names, along with the translated names as used in oce objects. If an item is repeated, then the second one has a 2 appended at the end, etc. Note that quality-control columns (with names starting with "QQQQ") are not handled with regular expressions. Instead, if such a flag is found in the i-th column, then a name is constructed by taking the name of the (i-1)-th column and appending "Flag".

BATH_*.*barometricDepthBarometric depth (of sensor? of water column?)
BEAM_*.*aUsed in adp objects
CNTR_*.*scanUsed in ctd objects
CRAT_*.*conductivityConductivity ratio
COND_*.*conductivityConductivity in mS/cm or S/m (unit detected)
CNDC_*.*conductivityConductivity in mS/cm or S/m (unit detected)
DEPH_*.*pressureSensor depth below sea level
DOXY_*.*oxygenUsed mainly in ctd objects
ERRV_*.*errorUsed in adp objects
EWCT_*.*uUsed in adp and cm objects
FFFF_*.*flagArchaicOld flag name, replaced by QCFF
FLOR_*.*fluorometerUsed mainly in ctd objects
FWETLABSfwetlabsUsed in ??
NSCT_*.*vUsed in adp objects
OCUR_*.*oxygenCurrentUsed mainly in ctd objects
OSAT_*.*oxygenSaturationUsed mainly in ctd objects
OTMP_*.*oxygenTemperatureUsed mainly in ctd objects
OXYV_*.*oxygenVoltageUsed mainly in ctd objects
POTM_*.*thetaUsed mainly in ctd objects
PRES_*.*pressureUsed mainly in ctd objects
PSAL_*.*salinityUsed mainly in ctd objects
PSAR_*.*parUsed mainly in ctd objects
QCFF_*.*flagOverall flag
SIGP_*.*sigmaThetaUsed mainly in ctd objects
SIGT_*.*sigmatUsed mainly in ctd objects
SNCN_*.*scanCounterUsed mainly in ctd objects
SYTM_*.*timeUsed in many objects
TE90_*.*temperatureUsed mainly in ctd objects
TEMP_*.*temperatureUsed mainly in ctd objects
TOTP_*.*pressureAbsoluteUsed mainly in ctd objects
UNKN_*.*-The result is context-dependent
VCSP_*.*wUsed in adp objects

Any code not shown in the list is transferred to the oce object without renaming, apart from the adjustment of suffix numbers. The following code have been seen in data files from the Bedford Institute of Oceanography: ALTB, PHPH and QCFF.

A note on unit conventions

Some older ODF files contain non-standard units for conductivity, including mho/m, mmho/cm, and mmHo. As the units for conductivity are important for derived quantities (e.g. salinity), such units are converted to standard units (e.g. S/m and mS/cm). (This was once done with a warning, but on 2020-02-07 the warning was removed, since it did not indicate a problem with the file or the data scanning; rather, it was a simple matter of nudging towards uniformity in a way that ought to confuse no users, akin to converting m**3 to m^3, which is also done here without warning.)

Consistency warning

There are disagreements on variable names. For example, the ``DFO Common Data Dictionary'' (reference 1) has unit millimole/m^3 for NODC and MEDS, but it has unit mL/L for BIO and IML.


For sources that describe the ODF format, see the documentation for the odf.

See also

Other functions that interpret variable names and units from headers: cnvName2oceName(), oceNames2whpNames(), oceUnits2whpUnits(), unitFromStringRsk(), unitFromString(), woceNames2oceNames(), woceUnit2oceUnit()

Other things related to odf data: CTD_BCD2014666_008_1_DN.ODF.gz, ODF2oce(), ODFListFromHeader(), [[,odf-method, [[<-,odf-method, odf-class, plot,odf-method, read.ctd.odf(), read.odf(), subset,odf-method, summary,odf-method