Skip to contents

CRAN Version Total Downloads Last Month Downloads Last Week Downloads

Check 🛠 Docs 📚 Code Coverage 📔

GitHub forksGitHub repo stars

GitHub commit activityGitHub contributorsGitHub last commitGitHub pull requestsGitHub repo sizeGitHub language countProject Status: Active – The project has reached a stable, usable state and is being actively developed. Current Version Open Issues

teal.picks is an R package used in the development of teal applications. It provides:

  • a hierarchical choices / selected model for datasets, variables, and values in a Shiny session, with optional tidyselect support for dynamic choices,
  • picks_ui and picks_srv modules to collect those selections interactively,
  • merge_srv and tm_merge to merge teal data according to user picks,
  • conversion helpers such as as.picks to align with teal.transform objects.

teal.picks is developed by Roche, Appsilon, and the wider open-source community. Roche and Appsilon are copyright holders of the project, which is hosted in the pharmaverse GitHub organisation.

Installation

install.packages('teal.picks')

Alternatively, you might want to use the development version.

# install.packages("pak")
pak::pak("pharmaverse/teal.picks")

Usage

See the package reference for full documentation.

Below is a minimal illustration of defining a picks specification (datasets, then variables; optional values() when needed):

library(teal.picks)

my_picks <- picks(
  datasets(choices = c("iris", "mtcars")),
  variables(
    choices = tidyselect::everything(),
    selected = 1L,
    multiple = TRUE
  )
)

Wire my_picks into picks_ui / picks_srv with a reactive teal_data object, or use tm_merge inside a teal::init() application. Full patterns are documented on the package site.

Getting help

If you encounter a bug or have a feature request, please file an issue. For questions, discussions, and staying up to date, please use the teal channel in the pharmaverse slack workspace.

Acknowledgment

teal.picks was created at Roche and is developed together with Appsilon and the wider open-source community. Thank you to everyone who has contributed code, reported an issue, improved the documentation, or built a module. To get involved, explore the open issues or join the #teal channel in the pharmaverse Slack.