Evaluate aeration method, retention time, leachate management, and curing phase requirements specified by AMS-III.F.

check_applicability_composting_practices_iiif(
  data,
  aeration_method_col = "aeration_method",
  compliant_aeration_methods = c("forced aeration", "turned windrow", "in-vessel"),
  retention_time_col = "retention_days",
  minimum_retention_days = 42,
  leachate_management_col = "leachate_managed",
  curing_phase_col = "curing_phase",
  group_cols = NULL,
  output_col = "composting_practices_applicable"
)

Arguments

data

Tibble containing composting system metadata.

aeration_method_col

Column storing the aeration method description.

compliant_aeration_methods

Character vector of compliant aeration methods.

retention_time_col

Column storing the minimum residence time (days).

minimum_retention_days

Minimum required residence time.

leachate_management_col

Column storing logical indicators that leachate is managed.

curing_phase_col

Optional column storing logical indicators confirming a curing phase.

group_cols

Optional character vector specifying grouping columns.

output_col

Name of the logical output column summarising compliance.

Value

Tibble indicating whether composting practices satisfy AMS-III.F.

Examples

systems <- tibble::tibble(
  site_id = c("A", "B"),
  aeration_method = c("forced aeration", "static pile"),
  retention_days = c(56, 30),
  leachate_managed = c(TRUE, TRUE)
)
check_applicability_composting_practices_iiif(systems, group_cols = "site_id")
#> Error in dplyr::mutate(data_tbl, .aeration_applicable = tolower(trimws(.data[[aeration_method_col]])) %in%     compliant_aeration_methods, .retention_applicable = .data[[retention_time_col]] >=     minimum_retention_days, .leachate_applicable = .data[[leachate_management_col]] %in%     TRUE, .curing_applicable = if (!is.null(curing_phase_col)) .data[[curing_phase_col]] %in%     TRUE else TRUE, .applicable = .aeration_applicable & .retention_applicable &     .leachate_applicable & .curing_applicable):  In argument: `.curing_applicable = if (...) NULL`.
#> Caused by error in `.data[["curing_phase"]]`:
#> ! Column `curing_phase` not found in `.data`.