Travis-CI Build Status Coverage Status Project Status: Active – The project has reached a stable, usable state and is being actively developed. DOI status CRAN Version


Within Europe, the Water Framework Directive (WFD) sets EU-wide standards for how the quality of surface- and ground-waters across Europe is assessed and classified. Assessment of quality using the WFD is based on a range of elements that vary depending on the type of water being assessed and are combined to give an overall classification of waterbodies into five classes (High, Good, Moderate, Poor and Bad) for surface waters and two classes (Good or Poor) for groundwaters.

In the UK the Environment Agency (EA) is the competent authority responsible for monitoring and assessment of water quality within England. The EA have made the reporting data relating to the requirements of the WFD available via the Catchment Data Explorer (CDE) website,

cde is a package for R which facilitates searching and download of the WFD reporting data for all waterbodies from the EA CDE website. The ability to access these data from within the R environment allows for efficient collation and interrogation of data and reproducible analysis of trends or patterns in water quality and pressures on waterbodies across England. There are also some inconsistencies in the way in which the data are structured within the original CDE website; cde provides consistently named and structured output which facilitates further analysis.

The types of data that can be downloaded are: WFD status classification data, Reasons for Not Achieving Good (RNAG) status, objectives set for waterbodies, measures put in place to improve water quality and details of associated protected areas.

The CDE data are made available under the Open Government Licence v3.0 and use of the data accessed by and contained within this package implies acceptance of these licence conditions.


You can install the stable version of cde from CRAN with:

Or you can install the current development version from github with:

# install.packages("remotes")

Basic usage

See the Get started vignette or Reference sections above for details of the different functions.


For details of how to contribute to this package, see here.