#' Stock status relative to reference points
#'
#' returns a data frame of stock status relative to reference points and
#' catch, discards, and landings by stock for the most recent assessment.
#'
#' @param x a dataframe output of format_sag function
#'
#' @return A data frame..
#'
#' @note
#' Can add some helpful information here
#'
#' @seealso
#' \code{\link{stock_trends}} for formatting data from the ICES Stock Assessment database.
#'
#' \code{\link{icesFO-package}} gives an overview of the package.
#'
#' @examples
#' \dontrun{
#' CLD_2018 <- catch_landings_discards(sag_formatted)
#' }
#'
#' @references
#'
#' The ICES stock information Database web sevices: \url{http://sid.ices.dk/services/}
#'
#' @export
#need to find a better name for this function
stockstatus_CLD_current <- function(x) {
df<- dplyr::select(x,Year,
StockKeyLabel,
FisheriesGuild,
AssessmentYear,
F,
FMSY,
SSB,
MSYBtrigger,
catches,
landings,
discards)
df$F <- as.numeric(df$F)
df$SSB <- as.numeric(df$SSB)
df$FMSY <- as.numeric(df$FMSY)
df$MSYBtrigger <- as.numeric(df$MSYBtrigger)
df2 <- dplyr::group_by(df,StockKeyLabel)
df2 <- dplyr::filter(df2,Year == AssessmentYear - 1)
df2 <- dplyr::mutate(df2,F_FMSY = ifelse(!is.na(FMSY),
F / FMSY,
NA))
df2 <- dplyr::select(df2,StockKeyLabel,
FisheriesGuild,
F_FMSY,
catches,
landings,
discards,
FMSY,
F)
df3 <- dplyr::group_by(df,StockKeyLabel, AssessmentYear)
df3 <- dplyr::filter(df3, Year %in% c(AssessmentYear, (AssessmentYear - 1)))
df3 <- dplyr::mutate(df3, SSB_MSYBtrigger = ifelse(!is.na(MSYBtrigger),
SSB / MSYBtrigger,
NA))
df3 <- dplyr::select(df3, StockKeyLabel,Year,
FisheriesGuild,
SSB_MSYBtrigger,
SSB,
MSYBtrigger)
check <- unique(df3[c("StockKeyLabel", "Year", "MSYBtrigger")])
check <- check[order(-check$Year),]
check2 <- check[duplicated(check$StockKeyLabel),]
df3 <- anti_join(df3,check2)
df4 <- dplyr::full_join(df2, df3)
df4 <- dplyr::mutate(df4, Status = ifelse(is.na(F_FMSY) | is.na(SSB_MSYBtrigger),
"GREY",
if_else(F_FMSY < 1 & SSB_MSYBtrigger >= 1,
"GREEN",
"RED",
"GREY")))
df4
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.