knitr::opts_chunk$set(echo = TRUE)

library(tidyverse)
library(odbc)
library(ROracle)
library(dplyr, warn.conflicts = FALSE)

# # unlock keyring
# keyring::keyring_unlock("apsd_ma")
# 
# # local run
# # dw_apsd <- config::get(value = "apsd", file = "K:/R_DEV/config.yml")
# 
# # if on server..
# # dw_apsd <- config::get(value = "maps", file = "~/config.yml")
# 
# 
# # connect to MAPS
# 
# con_maps = apsdFuns::roracle_login(key_name = 'apsd_ma', key_service = 'maps')
Sys.setenv(TZ = "America/New_York")
Sys.setenv(ORA_SDTZ = "America/New_York")

if(file.exists(here::here("vignettes/articles", "pw.csv"))) {
  pw_df <- readr::read_csv(here::here("vignettes/articles", "pw.csv"), col_types = "c")
  pw <- pw_df$pw
} else {
  pw <- rstudioapi::askForPassword("Enter keyring password")
}

keyring::keyring_unlock("apsd_ma", password = pw) # will prompt for password
con_maps <- apsdFuns::roracle_login(key_name = 'apsd_ma', key_service = 'maps')

Summary

Description

Data Sources

OBDBS (NEFOP, ASM, @NOVA, NEFSC)

DiagrammeR::mermaid(diagram = "
  graph TD
  A((obdbs.obtrp)) --> Z[cams_obdbsYYYY]
  B((obdbs.obhau)) --> Z[cams_obdbsYYYY]
  C((obdbs.obspp)) --> Z[cams_obdbsYYYY]
  D((obdbs.obfishdisp)) --> Z[cams_obdbsYYYY]
  E((obdbs.asmtrp)) --> Z[cams_obdbsYYYY]
  F((obdbs.asmhau)) --> Z[cams_obdbsYYYY]
  G((obdbs.asmspp)) --> Z[cams_obdbsYYYY]
  H((obdbs.obfishdisp)) --> Z[cams_obdbsYYYY]
  I((obdbs.obspecconv)) --> Z[cams_obdbsYYYY]
  J((obdbs.obotgh)) --> Z[cams_obdbsYYYY]
  K((obdbs.asmotgh)) --> Z[cams_obdbsYYYY]
  L((obdbs.obgggh)) --> Z[cams_obdbsYYYY]
  M((obdbs.asmgggh)) --> Z[cams_obdbsYYYY]



        ")

Approach

These tables are built by calendar year and encompass all information from NEFOP and ASM, for all observed trips. Tables from the OBDSB@NOVA schema in Oracle are used to build a flat file of all observations at the LINK3 (haul) level for all discarded species. The general methodology has been used for the past 5 years at GARFO for annual ACL monitoring in many managed fisheries (e.g. Squid/Mack/Butterfish, dogfish, monkfish, black sea bass, etc.). Since CAMS discard methodology relies on commerical trip metrics for stratification, many variables in these tables are not used directly as in the past. They are used, however, to match the observed records to the corresponding commercial trip.

Refer to OBDBS documentation for details on individual input tables.

Data Dictionary

library(readxl)
library(knitr)

dat = readxl::read_xlsx('bg_obs_catch_columns.xlsx', sheet = 'obs_cams')

kable(dat)


noaa-garfo/discaRd documentation built on April 17, 2025, 10:32 p.m.