Type: Package
Title: A 'shiny' App for Reproducible QA/QC of Eddy Covariance Data
Version: 0.5.0
Description: An interactive 'shiny'-based tool for exploration and quality assurance and quality control (QA/QC) of eddy covariance flux tower data processing. It generates data-point removal code via user-directed selection from a scatterplot, and can export a cleaned .csv with removed points set to NA plus an R script for reproducibility. Reference: Key (2025) <doi:10.5281/zenodo.15597159>.
License: GPL-3
URL: https://github.com/kesondrakey/fluxtools, https://doi.org/10.5281/zenodo.15597159
BugReports: https://github.com/kesondrakey/fluxtools/issues
Depends: R (≥ 4.1.0)
Imports: dplyr, plotly, shiny, tibble
Suggests: kableExtra, knitr, rmarkdown, testthat (≥ 3.0.0)
VignetteBuilder: knitr
BuildVignettes: TRUE
Encoding: UTF-8
RoxygenNote: 7.3.2
NeedsCompilation: no
Packaged: 2025-08-21 21:18:13 UTC; keyke
Author: Kesondra Key [aut, cre]
Maintainer: Kesondra Key <keyke@iu.edu>
Repository: CRAN
Date/Publication: 2025-08-21 21:32:12 UTC

Apply Physical Range Module (PRM) bounds to AmeriFlux-style data

Description

Clamps values to PRM ranges by variable family (e.g., ⁠^SWC($|_)⁠, ⁠^P($|_)⁠). Columns with "QC" in their names are skipped by default. Out-of-range values are set to NA. No columns are removed.

Usage

apply_prm(.data, include = NULL, skip_qc = TRUE, note = TRUE, summarize = TRUE)

Arguments

.data

A data.frame or tibble.

include

Optional character vector of base family names to apply (e.g., "SWC", "P"). If NULL, all families are applied.

skip_qc

Logical; when TRUE, skip columns that look like flags: names ending/containing ⁠_QC⁠ or ⁠_SSITC_TEST⁠ (case-insensitive). Default: TRUE.

note

Logical; print a per-column summary with expected units, PRM range, and counts.

summarize

Logical; if TRUE, return a list with data and summary; otherwise return only the clamped data frame.

Value

If summarize = TRUE, a list with data and summary; else a data.frame.


Get the PRM rules as a tibble (for vignettes & checks)

Description

Get the PRM rules as a tibble (for vignettes & checks)

Usage

get_prm_rules()

Value

A tibble with columns: family (regex), variable (base), min, max, units, description


Launch the interactive 'shiny' QA/QC app for flux data

Description

Launch the interactive 'shiny' QA/QC app for flux data

Usage

run_fluxtools()

Value

No return value, called for side effects (it launches the Shiny app).

Examples

if (interactive()) {
  run_fluxtools()
}