R/as-soilprofilecolection.R

Defines functions get_sitios_columns as_SoilProfileCollection

Documented in as_SoilProfileCollection

#' Objeto SoilProfileCollection
#'
#' Transforma uno másperfiles de SISINTA en formato data.frame en un objeto
#' SoilProfileCollection del paquete `aqp`.
#'
#' @param perfiles data.frame con perfiles descargados o leidos con
#' la función [get_perfiles()].
#'
#' @return un objeto [aqp::SoilProfileCollection]
#'
#' @examples
#'
#' coleccion <- as_SoilProfileCollection(perfiles)
#'
#' @export
as_SoilProfileCollection <- function(perfiles) {
  perfil_cols <- get_sitios_columns(perfiles)
  perfil_cols <- setdiff(perfil_cols, "perfil_id")

  formula <- stats::as.formula(paste0("~ ", perfil_cols, collapse = " + "))

  aqp::depths(perfiles) <- perfil_id ~ profundidad_superior + profundidad_inferior
  aqp::site(perfiles) <- formula

  perfiles
}


get_sitios_columns <- function(data) {
  colnames(data)[startsWith(colnames(data), "s_")]

}
INTA-Suelos/SISINTAR documentation built on June 30, 2023, 7:43 p.m.