Create the location_ancillary table

create_location_ancillary(
  L0_flat,
  location_id,
  datetime = NULL,
  variable_name,
  unit = NULL
)

Arguments

L0_flat

(tbl_df, tbl, data.frame) The fully joined source L0 dataset, in "flat" format (see details).

location_id

(character) Column in L0_flat containing the identifier assigned to each unique location at the observation level.

datetime

(character) An optional column in L0_flat containing the date, and if applicable time, of ancillary location data following the ISO-8601 standard format (e.g. YYYY-MM-DD hh:mm:ss).

variable_name

(character) Columns in L0_flat containing the ancillary location data.

unit

(character) An optional column in L0_flat containing the units of each variable_name following the column naming convention: unit_<variable_name> (e.g. "unit_depth").

Value

(tbl_df, tbl, data.frame) The location_ancillary table.

Details

This function collects specified columns from L0_flat, converts into long (attribute-value) form by gathering variable_name. Regular expression matching joins unit to any associated variable_name and is listed in the resulting table's "unit" column.

"flat" format refers to the fully joined source L0 dataset in "wide" form with the exception of the core observation variables, which are in "long" form (i.e. using the variable_name, value, unit columns of the observation table). This "flat" format is the "widest" an L1 ecocomDP dataset can be consistently spread due to the frequent occurrence of L0 source datasets with > 1 core observation variable.

Examples

flat <- ants_L0_flat

location_ancillary <- create_location_ancillary(
  L0_flat = flat,
  location_id = "location_id",
  variable_name = "treatment")

location_ancillary
#> # A tibble: 8 x 6
#>   location_ancillary_id location_id datetime variable_name value           unit 
#>   <chr>                 <chr>       <chr>    <chr>         <chr>           <chr>
#> 1 1                     1           NA       treatment     Girdled         NA   
#> 2 2                     2           NA       treatment     Logged          NA   
#> 3 3                     3           NA       treatment     HemlockControl  NA   
#> 4 4                     4           NA       treatment     Logged          NA   
#> 5 5                     5           NA       treatment     Girdled         NA   
#> 6 6                     6           NA       treatment     HemlockControl  NA   
#> 7 7                     7           NA       treatment     HardwoodControl NA   
#> 8 8                     8           NA       treatment     HardwoodControl NA