Michael J. Pennino , Jen Stamp , Erik W. Leppo , David A. Gibbs , Britta G. Bierwagen
{"title":"ContDataQC: An R package and Shiny app for quality control of continuous water quality sensor data","authors":"Michael J. Pennino , Jen Stamp , Erik W. Leppo , David A. Gibbs , Britta G. Bierwagen","doi":"10.1016/j.softx.2025.102124","DOIUrl":null,"url":null,"abstract":"<div><div>The ContDataQC R package is a free, open-source tool that was developed to help water quality monitoring programs perform quality control (QC) procedures on continuous sensor data. ContDataQC helps users speed up and standardize the QC process, minimize undetected data errors, and make full use of their sensor data. It has three main functions: generate QC reports to detect anomalies and erroneous data values, merge QC'd data files from different time periods, and generate time series plots and basic summary statistics. ContDataQC is currently configured to run on nine different parameters: air and water temperature, dissolved oxygen, conductivity, chlorophyll-a, air and water pressure, sensor depth, pH, turbidity, and salinity. Users can add new parameters and customize many of the requirements by editing a plain text configuration file. A web app version, through R Shiny, is available within the package or via a weblink. If accessed via the URL, it will not require the installation of R software. In this paper, we describe the main functions of ContDataQC and discuss how it is being applied in long-term regional monitoring networks for streams and lakes. Both the R Shiny web app and the R package are for users who have no existing workflow for sensor data and wish to adopt the approach of ContDataQC (which has a particular organizational scheme and sequential workflow). People without R coding experience can use the Shiny app, which has a more user-friendly interface, while users who are proficient in R may choose to use the code package.</div></div>","PeriodicalId":21905,"journal":{"name":"SoftwareX","volume":"30 ","pages":"Article 102124"},"PeriodicalIF":2.4000,"publicationDate":"2025-03-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"SoftwareX","FirstCategoryId":"94","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S2352711025000913","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
Abstract
The ContDataQC R package is a free, open-source tool that was developed to help water quality monitoring programs perform quality control (QC) procedures on continuous sensor data. ContDataQC helps users speed up and standardize the QC process, minimize undetected data errors, and make full use of their sensor data. It has three main functions: generate QC reports to detect anomalies and erroneous data values, merge QC'd data files from different time periods, and generate time series plots and basic summary statistics. ContDataQC is currently configured to run on nine different parameters: air and water temperature, dissolved oxygen, conductivity, chlorophyll-a, air and water pressure, sensor depth, pH, turbidity, and salinity. Users can add new parameters and customize many of the requirements by editing a plain text configuration file. A web app version, through R Shiny, is available within the package or via a weblink. If accessed via the URL, it will not require the installation of R software. In this paper, we describe the main functions of ContDataQC and discuss how it is being applied in long-term regional monitoring networks for streams and lakes. Both the R Shiny web app and the R package are for users who have no existing workflow for sensor data and wish to adopt the approach of ContDataQC (which has a particular organizational scheme and sequential workflow). People without R coding experience can use the Shiny app, which has a more user-friendly interface, while users who are proficient in R may choose to use the code package.
期刊介绍:
SoftwareX aims to acknowledge the impact of software on today''s research practice, and on new scientific discoveries in almost all research domains. SoftwareX also aims to stress the importance of the software developers who are, in part, responsible for this impact. To this end, SoftwareX aims to support publication of research software in such a way that: The software is given a stamp of scientific relevance, and provided with a peer-reviewed recognition of scientific impact; The software developers are given the credits they deserve; The software is citable, allowing traditional metrics of scientific excellence to apply; The academic career paths of software developers are supported rather than hindered; The software is publicly available for inspection, validation, and re-use. Above all, SoftwareX aims to inform researchers about software applications, tools and libraries with a (proven) potential to impact the process of scientific discovery in various domains. The journal is multidisciplinary and accepts submissions from within and across subject domains such as those represented within the broad thematic areas below: Mathematical and Physical Sciences; Environmental Sciences; Medical and Biological Sciences; Humanities, Arts and Social Sciences. Originating from these broad thematic areas, the journal also welcomes submissions of software that works in cross cutting thematic areas, such as citizen science, cybersecurity, digital economy, energy, global resource stewardship, health and wellbeing, etcetera. SoftwareX specifically aims to accept submissions representing domain-independent software that may impact more than one research domain.