calc_quantiles: Calculate and insert columns containing arbitrary quantiles...

View source: R/utils-calc-quantiles.R

calc_quantilesR Documentation

Calculate and insert columns containing arbitrary quantiles for a particular column

Description

Calculate and insert columns containing arbitrary quantiles for a particular column

Calculate quantiles across groups for a given column

Usage

calc_quantiles(df = NULL, col = NULL, include_mean = TRUE)

calc_quantiles_by_group(
  df = NULL,
  grp_col = NULL,
  col = NULL,
  grp_names = grp_col,
  include_mean = TRUE
)

Arguments

df

A data.frame with columns with names given by grp_col and col

col

The column name to use as values to calculate quantiles for

include_mean

If TRUE, include the mean in the output

grp_col

The column name to use for grouping the data

grp_names

The column name to use for labeling the grouped column. By default it is the same as the grouping column (grp_col).

Details

Uses the probs vector which is included in the package data for this package

Value

A data.frame() with a new column for each value in the probs vector

A data.frame() containing the quantile values with one row per group represented by grp_col

Examples

library(tibble)
library(dplyr)
library(purrr)
pq <- tribble(
  ~year, ~grp, ~val,
  2000,    1,  2.1,
  2001,    1,  3.4,
  2002,    1,  4.5,
  2003,    1,  5.6,
  2004,    1,  6.7,
  2000,    2,  3.1,
  2001,    2,  4.4,
  2002,    2,  5.5,
  2003,    2,  6.6,
  2004,    2,  8.7,
  2000,    3, 13.1,
  2001,    3, 14.4,
  2002,    3, 15.5,
  2003,    3, 16.6,
  2004,    3, 18.7)

probs <- c(0.05, 0.25, 0.5, 0.75, 0.95)

yrs <- sort(unique(pq$year))
df <- pq %>%
  group_by(year) %>%
  group_map(~ calc_quantiles(.x, col = "val", probs = probs)) %>%
  map_df(~{.x}) %>%
  mutate(year = yrs) %>%
  select(year, everything())
library(tibble)
library(dplyr)
library(purrr)
pq <- tribble(
  ~year, ~grp, ~val,
  2000,    1,  2.1,
  2001,    1,  3.4,
  2002,    1,  4.5,
  2003,    1,  5.6,
  2004,    1,  6.7,
  2000,    2,  3.1,
  2001,    2,  4.4,
  2002,    2,  5.5,
  2003,    2,  6.6,
  2004,    2,  8.7,
  2000,    3, 13.1,
  2001,    3, 14.4,
  2002,    3, 15.5,
  2003,    3, 16.6,
  2004,    3, 18.7)

probs <- c(0.05, 0.25, 0.5, 0.75, 0.95)

j <- calc_quantiles_by_group(pq,
                             grp_col = "year",
                             col = "val",
                             probs = probs)

pacific-hake/hake-assessment documentation built on July 21, 2024, 8:19 a.m.