From 555c88e40f51414d12ffe53dd6061ef1e9bd7d27 Mon Sep 17 00:00:00 2001 From: Valentin Date: Tue, 25 Jan 2022 15:55:24 -0500 Subject: [PATCH] fix accessors --- NAMESPACE | 12 +++ R/accessors-methods-sspm_dataset.R | 105 ++++++++++++++++++++++++++ R/fit.R | 4 +- R/plot.R | 4 +- R/predict.R | 4 +- R/spm_discretize.R | 2 +- R/spm_smooth.R | 2 +- R/sspm.R | 19 +---- man/accessors-methods-sspm_dataset.Rd | 36 +++++++++ 9 files changed, 164 insertions(+), 24 deletions(-) diff --git a/NAMESPACE b/NAMESPACE index 92150927..de66f7dd 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -9,12 +9,14 @@ export("is_mapped<-") export("is_split<-") export("method_func<-") export("raw_formula<-") +export("spm_biomass_vars<-") export("spm_boundaries<-") export("spm_boundary<-") export("spm_boundary_area<-") export("spm_coords_col<-") export("spm_data<-") export("spm_datasets<-") +export("spm_density_vars<-") export("spm_discret_method<-") export("spm_formulas<-") export("spm_get_fit<-") @@ -25,6 +27,7 @@ export("spm_points<-") export("spm_response<-") export("spm_smoothed_data<-") export("spm_smoothed_fit<-") +export("spm_smoothed_vars<-") export("spm_time<-") export("spm_unique_ID<-") export("translated_formula<-") @@ -48,12 +51,14 @@ export(spm_aggregate) export(spm_aggregate_catch) export(spm_as_boundary) export(spm_as_dataset) +export(spm_biomass_vars) export(spm_boundaries) export(spm_boundary) export(spm_boundary_area) export(spm_coords_col) export(spm_data) export(spm_datasets) +export(spm_density_vars) export(spm_discret_method) export(spm_discretize) export(spm_formulas) @@ -69,6 +74,7 @@ export(spm_smooth) export(spm_smooth_methods) export(spm_smoothed_data) export(spm_smoothed_fit) +export(spm_smoothed_vars) export(spm_split) export(spm_time) export(spm_unique_ID) @@ -85,12 +91,14 @@ exportMethods("is_mapped<-") exportMethods("is_split<-") exportMethods("method_func<-") exportMethods("raw_formula<-") +exportMethods("spm_biomass_vars<-") exportMethods("spm_boundaries<-") exportMethods("spm_boundary<-") exportMethods("spm_boundary_area<-") exportMethods("spm_coords_col<-") exportMethods("spm_data<-") exportMethods("spm_datasets<-") +exportMethods("spm_density_vars<-") exportMethods("spm_discret_method<-") exportMethods("spm_formulas<-") exportMethods("spm_get_fit<-") @@ -101,6 +109,7 @@ exportMethods("spm_points<-") exportMethods("spm_response<-") exportMethods("spm_smoothed_data<-") exportMethods("spm_smoothed_fit<-") +exportMethods("spm_smoothed_vars<-") exportMethods("spm_time<-") exportMethods("spm_unique_ID<-") exportMethods("translated_formula<-") @@ -123,12 +132,14 @@ exportMethods(spm_aggregate) exportMethods(spm_aggregate_catch) exportMethods(spm_as_boundary) exportMethods(spm_as_dataset) +exportMethods(spm_biomass_vars) exportMethods(spm_boundaries) exportMethods(spm_boundary) exportMethods(spm_boundary_area) exportMethods(spm_coords_col) exportMethods(spm_data) exportMethods(spm_datasets) +exportMethods(spm_density_vars) exportMethods(spm_discret_method) exportMethods(spm_discretize) exportMethods(spm_formulas) @@ -142,6 +153,7 @@ exportMethods(spm_response) exportMethods(spm_smooth) exportMethods(spm_smoothed_data) exportMethods(spm_smoothed_fit) +exportMethods(spm_smoothed_vars) exportMethods(spm_split) exportMethods(spm_time) exportMethods(spm_unique_ID) diff --git a/R/accessors-methods-sspm_dataset.R b/R/accessors-methods-sspm_dataset.R index e23b4921..0ca020b8 100644 --- a/R/accessors-methods-sspm_dataset.R +++ b/R/accessors-methods-sspm_dataset.R @@ -145,6 +145,76 @@ setMethod("spm_time<-", } ) +# Biomass ----------------------------------------------------------------- +# Accessors --------------------------------------------------------------- + +#' @rdname accessors-methods-sspm_dataset +#' @export +setGeneric(name = "spm_biomass_vars", + def = function(sspm_object) standardGeneric("spm_biomass_vars") +) + +#' @rdname accessors-methods-sspm_dataset +#' @export +setMethod("spm_biomass_vars", + signature("sspm_object" = "sspm_dataset"), + function(sspm_object) sspm_object@biomass +) + +# Replacers --------------------------------------------------------------- + +#' @rdname accessors-methods-sspm_dataset +#' @export +setGeneric(name = "spm_biomass_vars<-", + def = function(object, value) standardGeneric("spm_biomass_vars<-") +) + +#' @rdname accessors-methods-sspm_dataset +#' @export +setMethod("spm_biomass_vars<-", + signature("object" = "sspm_dataset"), + function(object, value) { + object@biomass <- value + validObject(object) + return(object) + } +) + +# Biomass ----------------------------------------------------------------- +# Accessors --------------------------------------------------------------- + +#' @rdname accessors-methods-sspm_dataset +#' @export +setGeneric(name = "spm_density_vars", + def = function(sspm_object) standardGeneric("spm_density_vars") +) + +#' @rdname accessors-methods-sspm_dataset +#' @export +setMethod("spm_density_vars", + signature("sspm_object" = "sspm_dataset"), + function(sspm_object) sspm_object@density +) + +# Replacers --------------------------------------------------------------- + +#' @rdname accessors-methods-sspm_dataset +#' @export +setGeneric(name = "spm_density_vars<-", + def = function(object, value) standardGeneric("spm_density_vars<-") +) + +#' @rdname accessors-methods-sspm_dataset +#' @export +setMethod("spm_density_vars<-", + signature("object" = "sspm_dataset"), + function(object, value) { + object@density <- value + validObject(object) + return(object) + } +) + # Formulas ---------------------------------------------------------------- # Accessors --------------------------------------------------------------- @@ -238,6 +308,41 @@ setMethod("spm_smoothed_fit<-", } ) +# Smoothed var ------------------------------------------------------------ +# Accessors --------------------------------------------------------------- + +#' @rdname accessors-methods-sspm_dataset +#' @export +setGeneric(name = "spm_smoothed_vars", + def = function(sspm_object) standardGeneric("spm_smoothed_vars") +) + +#' @rdname accessors-methods-sspm_dataset +#' @export +setMethod("spm_smoothed_vars", + signature("sspm_object" = "sspm_dataset"), + function(sspm_object) sspm_object@smoothed_vars +) + +# Replacers --------------------------------------------------------------- + +#' @rdname accessors-methods-sspm_dataset +#' @export +setGeneric(name = "spm_smoothed_vars<-", + def = function(object, value) standardGeneric("spm_smoothed_vars<-") +) + +#' @rdname accessors-methods-sspm_dataset +#' @export +setMethod("spm_smoothed_vars<-", + signature("object" = "sspm_dataset"), + function(object, value) { + object@smoothed_vars <- value + validObject(object) + return(object) + } +) + # Is mapped --------------------------------------------------------------- # Accessors --------------------------------------------------------------- diff --git a/R/fit.R b/R/fit.R index d8a92be4..759186b3 100644 --- a/R/fit.R +++ b/R/fit.R @@ -54,7 +54,7 @@ setMethod(f = "fit_smooths", patches <- spm_patches(boundaries) # Initialize/collect smoothed_vars/fit - full_smoothed_vars <- sspm_object@smoothed_vars + full_smoothed_vars <- spm_smoothed_vars(sspm_object) if (is.null(full_smoothed_vars)) { full_smoothed_vars <- c() } @@ -130,7 +130,7 @@ setMethod(f = "fit_smooths", } full_smoothed_vars <- c(full_smoothed_vars, response) - sspm_object@smoothed_vars <- full_smoothed_vars + spm_smoothed_vars(sspm_object) <- full_smoothed_vars return(sspm_object) } diff --git a/R/plot.R b/R/plot.R index 3a3cb4cf..b749af9a 100644 --- a/R/plot.R +++ b/R/plot.R @@ -47,8 +47,8 @@ setMethod("plot", if (checkmate::test_class(x, "sspm_discrete_boundary")) { - patches <- x@patches - points <- x@points + patches <- spm_patches(x) + points <- spm_points(x) sspm_discrete_plot <- ggplot2::ggplot() + ggplot2::geom_sf(data = patches, diff --git a/R/predict.R b/R/predict.R index 92bf5979..9947e4a1 100644 --- a/R/predict.R +++ b/R/predict.R @@ -241,8 +241,8 @@ setMethod(f = "predict", type = type)) names(preds) <- responses - biomass_vars <- c(object@biomass) - biomass_density_vars <- c(object@density) + biomass_vars <- c(spm_biomass_vars(object)) + biomass_density_vars <- c(spm_density_vars(object)) for (var in names(preds)){ if (var %in% biomass_vars){ diff --git a/R/spm_discretize.R b/R/spm_discretize.R index 521264a2..56eba6cb 100644 --- a/R/spm_discretize.R +++ b/R/spm_discretize.R @@ -138,7 +138,7 @@ setMethod(f = "spm_discretize", cli::col_yellow(spm_name(method)))) # Send to discretization routine - boundaries <- boundary_object@boundaries + boundaries <- spm_boundaries(boundary_object) boundary <- spm_boundary(boundary_object) other_args <- list(...) diff --git a/R/spm_smooth.R b/R/spm_smooth.R index bbbb3c3d..49657842 100644 --- a/R/spm_smooth.R +++ b/R/spm_smooth.R @@ -140,7 +140,7 @@ join_datasets <- function(sspm_dataset, sspm_boundary) { checkmate::assert_class(sspm_boundary, "sspm_discrete_boundary") the_data <- spm_data(sspm_dataset) - the_patches <- sspm_boundary@patches + the_patches <- spm_patches(sspm_boundary) # TODO REVIEW THE COHERENCE OF ST_TRANSFORM joined <- suppressMessages(sf::st_transform(the_data, crs = sf::st_crs(the_patches))) diff --git a/R/sspm.R b/R/sspm.R index 7c31e9b1..6e5934fc 100644 --- a/R/sspm.R +++ b/R/sspm.R @@ -29,20 +29,13 @@ setMethod(f = "sspm", predictors = "missing"), function(biomass, predictors) { - # if (!checkmate::test_subset(biomass_var, - # names(spm_data(biomass)))) { - # stop("`biomass_var` must be a column of `biomass`", - # call. = FALSE) - # } - new_sspm <- new("sspm", datasets = list(biomass = biomass), time = spm_time(biomass), - # biomass_var = biomass_var, uniqueID = "row_ID", boundaries = spm_boundaries(biomass), smoothed_data = spm_smoothed_data(biomass), - smoothed_vars = biomass@smoothed_vars, + smoothed_vars = spm_smoothed_vars(biomass), is_split = FALSE) } @@ -85,12 +78,6 @@ setMethod(f = "sspm", predictors_boundaries)) check_identical_boundaries(all_boundaries) - # if (!checkmate::test_subset(biomass_var, - # names(spm_data(biomass)))) { - # stop("`biomass_var` must be a column of `biomass`", - # call. = FALSE) - # } - # 3. combine the full_smoothed_data/vars # TODO message about catch info_message <- @@ -105,7 +92,7 @@ setMethod(f = "sspm", } full_smoothed_data <- biomass_clean - full_smoothed_vars <- biomass@smoothed_vars + full_smoothed_vars <- spm_smoothed_vars(biomass) for (predictor in predictors) { @@ -124,7 +111,7 @@ setMethod(f = "sspm", spm_time(biomass)), suffix = the_suffix) - predictor_smoothed_vars <- predictor@smoothed_vars + predictor_smoothed_vars <- spm_smoothed_vars(predictor) # Check same vars same_vars <- diff --git a/man/accessors-methods-sspm_dataset.Rd b/man/accessors-methods-sspm_dataset.Rd index edba1aaf..24923515 100644 --- a/man/accessors-methods-sspm_dataset.Rd +++ b/man/accessors-methods-sspm_dataset.Rd @@ -15,6 +15,14 @@ \alias{spm_coords_col<-,sspm_dataset-method} \alias{spm_time,sspm_dataset-method} \alias{spm_time<-,sspm_dataset-method} +\alias{spm_biomass_vars} +\alias{spm_biomass_vars,sspm_dataset-method} +\alias{spm_biomass_vars<-} +\alias{spm_biomass_vars<-,sspm_dataset-method} +\alias{spm_density_vars} +\alias{spm_density_vars,sspm_dataset-method} +\alias{spm_density_vars<-} +\alias{spm_density_vars<-,sspm_dataset-method} \alias{spm_formulas} \alias{spm_formulas,sspm_dataset-method} \alias{spm_formulas<-} @@ -25,6 +33,10 @@ \alias{spm_smoothed_fit,sspm_dataset-method} \alias{spm_smoothed_fit<-} \alias{spm_smoothed_fit<-,sspm_dataset-method} +\alias{spm_smoothed_vars} +\alias{spm_smoothed_vars,sspm_dataset-method} +\alias{spm_smoothed_vars<-} +\alias{spm_smoothed_vars<-,sspm_dataset-method} \alias{is_mapped} \alias{is_mapped,sspm_dataset-method} \alias{is_mapped<-} @@ -61,6 +73,22 @@ spm_coords_col(object) <- value \S4method{spm_time}{sspm_dataset}(object) <- value +spm_biomass_vars(sspm_object) + +\S4method{spm_biomass_vars}{sspm_dataset}(sspm_object) + +spm_biomass_vars(object) <- value + +\S4method{spm_biomass_vars}{sspm_dataset}(object) <- value + +spm_density_vars(sspm_object) + +\S4method{spm_density_vars}{sspm_dataset}(sspm_object) + +spm_density_vars(object) <- value + +\S4method{spm_density_vars}{sspm_dataset}(object) <- value + spm_formulas(sspm_object) \S4method{spm_formulas}{sspm_dataset}(sspm_object) @@ -81,6 +109,14 @@ spm_smoothed_fit(object) <- value \S4method{spm_smoothed_fit}{sspm_dataset}(object) <- value +spm_smoothed_vars(sspm_object) + +\S4method{spm_smoothed_vars}{sspm_dataset}(sspm_object) + +spm_smoothed_vars(object) <- value + +\S4method{spm_smoothed_vars}{sspm_dataset}(object) <- value + is_mapped(sspm_object) \S4method{is_mapped}{sspm_dataset}(sspm_object)