This package is intended to quality control temperature and salinity profiles by applying a sequence of tests. For CTD profiles and TSG time series it uses the PySeabird package, so it can interpret directly the SeaBird's .cnv output file.
This is the result from several generations of quality control systems, which started in 2006, while I was developing the quality control of termosalinographs at AOML-NOAA, USA. Later I was advising the quality control of the brazilian hydrography of PIRATA.
- CoTeDe can apply different quality control procedures:
- The default GTSPP, EGOOS or Argo procedures;
- A custom set of tests, including user defined thresholds;
- A novel approach based on Anomaly Detection, described by Castelao 2015;
- Fuzzy Logic approach proposed by Morello et.al. 2014;
- A complete fuzzy logic procedure, with traditional deffuzification, proposed by Castelão 2016;
Process multiple files in parallel, ideal for large datasets.
Export output, original data plus flags, into netCDF files following OCEANSites data structure.
To evaluate the records of a profile:
import cotede.qc
pqc = cotede.qc.fProfileQC('example.cnv')
To see the temperature records of the primary sensor:
pqc['temperature']
To see the flags of all tests applied on the secondary sensor of salinity:
pqc.flags['salinity2']
To evaluate a full set of profiles at once, like all profiles from a cruise, use the class ProfileQCCollection, like:
dataset = ProfileQCCollection('/path/to/data/', inputpattern=".*.cnv")
dataset.flags['temperature'].keys()
Check the notebooks galery for more examples and functionalities: http://nbviewer.ipython.org/github/castelao/CoTeDe/tree/master/docs/notebooks/
Since NOAA I wanted to combine the multiple tests, but I didn't really knew how to do that. In 2011 I learned the anomaly detection technique, but I only formalize the procedure in 2013, when I spent few months in Toulouse. The full name of this package is CoTe De l'eau, which I understand as something near to "rating the water". The short name is cotede, to make easier for the users to remember, since it is the quality control of COnductivity TEmperature and DEpth (cotede). The french name is a kind of tribute to the great time that I spent in France with Bia and the croissants that were converted in code lines.