Read a CTD file in ODF format
read.ctd.odf(
file,
columns = NULL,
station = NULL,
missingValue,
deploymentType = "unknown",
monitor = FALSE,
exclude = NULL,
encoding = "latin1",
debug = getOption("oceDebug"),
processingLog,
...
)
This function returns a ctd object.
either a connection or a character value naming a file.
For read.ctd.sbe()
and read.ctd.woce()
, this may be a
wildcard (e.g. "*.cnv"
or "*.csv"
) in which case the return
value is a vector containing CTD objects created by reading the files from
list.files()
with pattern
set to the specified wildcard
pattern.
an optional list that can be used to convert unrecognized
data names to resultant variable names. This is used only by
read.ctd.sbe()
and read.ctd.odf()
. For example,
if a data file named salinity as "SAL"
, then using
d <- read.ctd(f, columns=list(
salinity=list(name="SAL",
unit=list(unit=expression(),
scale="PSS-78"))))
would assign the "SAL"
column to the salinity
entry in the data
slot of the CTD object returned by the read.*
function.
optional character string containing an identifying name or number for the station. This can be useful if the routine cannot determine the name automatically, or if another name is preferred.
optional missing-value flag; data matching this value will
be set to NA
upon reading. If this is provided, then it overrules any
missing-value flag found in the data. For Seabird (.cnv
) files, there is
usually no need to set missingValue
, because it can be inferred from the
header (typically as -9.990e-29). Set missingValue=NULL
to turn off
missing-value detection, even in .cnv
files that contain missing-value
codes in their headers. If missingValue
is not specified,
then an attempt is made to infer such a value from the data, by testing
whether salinity and/or temperature has a minimum that is under -8 in value;
this should catch common values in files, without false positives. A warning
will be issued in this case, and a note inserted in the processing log of
the return value.
character string indicating the type of deployment. Use
"unknown"
if this is not known, "profile"
for a profile (in
which the data were acquired during a downcast, while the device was lowered
into the water column, perhaps also including an upcast; "moored"
if
the device is installed on a fixed mooring, "thermosalinograph"
(or
"tsg"
) if the device is mounted on a moving vessel, to record
near-surface properties, or "towyo"
if the device is repeatedly
lowered and raised.
boolean, set to TRUE
to provide an indication of
progress. This is useful if filename
is a wildcard.
either a character value holding a regular
expression that is used with grep()
to remove lines from the
header before processing, or NULL
(the default), meaning
not to exclude any such lines. The purpose of this argument
is to solve problems with some files, which can have
thousands of lines that indicate details that are may be of
little value in processing. For example, some files have thousands
of lines that would be excluded by using
exclude="PROCESS='Nulled the .* value"
in the function call.
a character value that indicates the encoding to be used for
this data file, if it is textual. The default value for most functions is
"latin1"
, which seems to be suitable for files containing text written in
English and French.
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 provided, the action item to be stored in the log. This is typically only provided for internal calls; the default that it provides is better for normal calls by a user.
additional arguments, passed to called routines.
Lacking detailed documentation of the ODF file format, the read.odf()
and
read.ctd.odf()
functions were crafted based on inspection of data files, and
so some guesses had to be made.
The PARAMETER_HEADER
chunks describing quality-control flags are
a case in point. These contain NAME
components that
refer to other PARAMETER_HEADER
chunks that hold measured data. However,
those references are not always matched well with the data names, and
even if they do match, the cross-reference syntax used by
the Bedford Institute of Oceanography differs from that used by
l’Institut Maurice-Lamontagne. To simplify coding, it was assumed that
each quality-control sequence applies to the data sequence
immediately preceding it. (This assumption is made in other
analysis systems.)
It is also prudent to pay attention to the units decoding,
which read.odf()
handles by calling unitFromString()
.
Be on the lookout for incorrect temperature scales, which
are sometimes reported with nonstandard strings in ODF files.
Also, note that you may see warnings about conductivity ratios,
which some ODF files incorrectly suggest have dimensions.
Dan Kelley
read.ctd.odf
reads files stored in Ocean Data Format, used in
some Canadian hydrographic databases.
For sources that describe the ODF format, see the documentation for the odf class.
Other things related to ctd data:
CTD_BCD2014666_008_1_DN.ODF.gz
,
[[,ctd-method
,
[[<-,ctd-method
,
as.ctd()
,
cnvName2oceName()
,
ctd-class
,
ctd.cnv
,
ctdDecimate()
,
ctdFindProfiles()
,
ctdRaw
,
ctdRepair()
,
ctdTrim()
,
ctd_aml.csv
,
ctd
,
d200321-001.ctd
,
d201211_0011.cnv
,
handleFlags,ctd-method
,
initialize,ctd-method
,
initializeFlagScheme,ctd-method
,
oceNames2whpNames()
,
oceUnits2whpUnits()
,
plot,ctd-method
,
plotProfile()
,
plotScan()
,
plotTS()
,
read.ctd.aml()
,
read.ctd.itp()
,
read.ctd.odv()
,
read.ctd.sbe()
,
read.ctd.ssda()
,
read.ctd.woce.other()
,
read.ctd.woce()
,
read.ctd()
,
setFlags,ctd-method
,
subset,ctd-method
,
summary,ctd-method
,
woceNames2oceNames()
,
woceUnit2oceUnit()
,
write.ctd()
Other things related to ctd data:
CTD_BCD2014666_008_1_DN.ODF.gz
,
[[,ctd-method
,
[[<-,ctd-method
,
as.ctd()
,
cnvName2oceName()
,
ctd-class
,
ctd.cnv
,
ctdDecimate()
,
ctdFindProfiles()
,
ctdRaw
,
ctdRepair()
,
ctdTrim()
,
ctd_aml.csv
,
ctd
,
d200321-001.ctd
,
d201211_0011.cnv
,
handleFlags,ctd-method
,
initialize,ctd-method
,
initializeFlagScheme,ctd-method
,
oceNames2whpNames()
,
oceUnits2whpUnits()
,
plot,ctd-method
,
plotProfile()
,
plotScan()
,
plotTS()
,
read.ctd.aml()
,
read.ctd.itp()
,
read.ctd.odv()
,
read.ctd.sbe()
,
read.ctd.ssda()
,
read.ctd.woce.other()
,
read.ctd.woce()
,
read.ctd()
,
setFlags,ctd-method
,
subset,ctd-method
,
summary,ctd-method
,
woceNames2oceNames()
,
woceUnit2oceUnit()
,
write.ctd()
Other things related to odf data:
CTD_BCD2014666_008_1_DN.ODF.gz
,
ODF2oce()
,
ODFListFromHeader()
,
ODFNames2oceNames()
,
[[,odf-method
,
[[<-,odf-method
,
odf-class
,
plot,odf-method
,
read.odf()
,
subset,odf-method
,
summary,odf-method
Other functions that read ctd data:
read.ctd.aml()
,
read.ctd.itp()
,
read.ctd.sbe()
,
read.ctd.ssda()
,
read.ctd.woce.other()
,
read.ctd.woce()
,
read.ctd()