
uSDT fits hierarchical signal detection theory models to
paired awareness and influence measures. It compares mean sensitivities,
estimates their latent association and tests influence sensitivity at
zero awareness sensitivity. It supports maximum likelihood and Bayesian
estimation, Bayes factors and study planning for power, precision, cost
and detectable effects.
Visit the documentation for the package:
The CRAN release may have an older API.
Install the released version from CRAN:
install.packages("uSDT")Or install the development version from GitHub:
# install.packages("pak")
pak::pak("RicardoReySaez/uSDT@dev")The development version installs brms. Bayesian fitting
also needs a C++ toolchain and either rstan with BH and
RcppEigen, or cmdstanr with CmdStan.
The examples below require uSDT 0.2.0 or later.
The package includes the two trial-level data frames from Experiment
2 of Vadillo et al. (2025): vadillo_awareness for the
awareness task and vadillo_cuing for the influence
task.
library(uSDT)
data(vadillo_awareness)
data(vadillo_cuing)
d <- usdt_data_tasks(
awareness = vadillo_awareness,
influence = vadillo_cuing,
subject_col = "subj",
condition_col = "condition",
condition_levels = c(signal = "old", noise = "new"),
response_col = list(awareness = "judged.old", influence = "rt"),
response_levels = list(
awareness = c(signal = 1, noise = 0),
influence = c(signal = "faster", noise = "slower")
),
dichotomize = list(awareness = FALSE, influence = TRUE)
)
fit <- hsdt(d)
summary(fit)
# The same model with brms, and Bayes factors for the three hypotheses
fit_bayes <- hsdt(d, estimation = "bayesian")
summary(fit_bayes)
usdt_bf(fit_bayes)Column, level and format arguments take a shared value or
task-specific values as
list(awareness = ..., influence = ...).
The source data are from Vadillo, Malejka, and Shanks (2025), Mapping the reliability multiverse of contextual cuing, doi:10.1037/xlm0001410.