The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
bdplm() and bdplogit() producing
invalid historical borrowing when covariates were not mean-centered.
Because the models use an intercept-free parameterization (separate
treatment and control means), uncentered covariates made the arm-mean
estimators strongly correlated and inflated their standard errors as
extrapolation errors at covariate = 0, corrupting the (diagonal)
discount prior. Both functions now automatically mean-center covariates
on their pooled (current plus historical) mean and back-transform the
reported intercept, so estimates are invariant to covariate location
shifts (#1)summary methods for
bdpnormal and bdpbinomial read the
one-/two-arm indicator from the wrong list element (args
instead of args1), causing two-arm fits to be summarised as
one-armbdpsurvival summary that
errored when current control data were absentY[, 0]) used when
computing the default surv_time in
bdpsurvivalcompare argument being silently dropped
(passed into paste()) rather than stored in the
bdpnormal and bdpbinomial fit objectsmc discount-weight Z-statistic in
bdplm to divide by the standard error rather than the
varianceplot methods hanging on the interactive “Hit
par(ask = ...) now respects interactive()bdplogit() failing during its main model fit
because the analysis data passed to MCMClogit() omitted the
response variable. The discounted prior precision matrix is now also
passed to MCMClogit() correctly (#12).alpha_discount() so alpha_max is
respected when discount_function = "identity" (#6).bdpnormal() one-arm normal fits with only one
source of data for an arm (current-only or historical-only internally)
returning an over-dispersed posterior_mu. These branches
now return the conjugate posterior of the mean rather than adding an
extra observation-level draw (posterior-predictive-like variance)
(#15).testthat test harness
(tests/testthat.R)expect_*() assertions:
augmented one-arm binomial and normal posterior means are pinned against
their closed-form conjugate values, and the fixed bugs (one-/two-arm
dispatch, stored compare flag, default survival time,
two-arm survival summary) are now guarded by tests. Plot calls in tests
pass an explicit type so they no longer prompt for
input.alpha_discount() and probability_discount()
(both now fully covered), the ppexp() vector and matrix
paths, the print methods (now fully covered), additional
plot branches, input-validation paths, the
bdplogit() main fit path, factor-covariate handling in
bdplm() and bdplogit(), and the
mc discounting method for bdpnormal and
bdpbinomialbdpnormal flat-prior
draw of the mean (posterior_flat_mu) and the fixed
current-only posterior_mu against their closed-form
conjugate (Student-t) variancemethod="mc" documentation in the binomial,
normal, and survival interfaces/vignettes to note that per-iteration
recomputation of the stochastic comparison yields a random
alpha_discount sequence that can show noticeable Monte
Carlo variability (#4)Rplots.pdfprior_covariate_sd documentation in
bdplm() and bdplogit() to note that covariate
effects carry an intentional near-zero discount weight, making their
priors effectively flat. The supplied value has negligible influence on
the posterior, and the effective prior standard deviation is roughly 1e6
larger than the nominal value at the default (#2)r-lib/actions examples (actions/checkout@v6,
codecov/codecov-action@v6,
actions/upload-artifact@v7)pkgdown website and accompanying GitHub Actions
workflowggplot2::aes_string() with
aes() and the .data pronoun in all
plot methodssize aesthetic with
linewidth in geom_line() callsmodel.matrixBayes() helper
(previously defined identically in both bdplm and
bdplogit) into a single internal fileposterior_survival() where both branches initialized
identical hazard matrices (#8)mc sigma2 sampling in bdplm()
and kept the sampling weights aligned with the candidate grid when some
marginal log-likelihoods are non-finite (#9)ppexp() now validates its x argument and
errors with an informative message when it is neither a numeric vector
nor a matrix (#10)plot and summary
methods are now computed with a vectorised C++ routine
(ppexpMV) that transposes the hazard matrix once across all
time points, instead of looping ppexp() per time point
(#11)posterior_survival(); the augmentation step now reuses the
values already computed during the discount phase (#7)useDynLib() directive in the
package namespaceNEWS.md
subsection convention for future releasesREADME.md with links, supported analyses,
examples, and citation guidance (#13)DESCRIPTION (#14)posterior_normal() that the flat-prior
draw of the mean is the conjugate posterior (scale
sqrt(sigma^2 / N)), not the posterior predictiveparams/EVAL
scaffolding from the vignette headersbdpbinomial,
bdpnormal, and bdpsurvivalbdpsurvivalstop break to discount_logit for
method = mcbdplm vignette typo fixesbdpsurvival
method = "mc" of
the bdpbinomial and bdpnormal functionsbdplm now exists and mimics
lmbdpbinomial vignette language around success
(vs event)bdpsurvival print
method adjusted to current data onlybdplm function for two-arm trialsdiscount_function input:
bdpregressionmethod = "mc" switched from
pshisq to pnormprint input to plot methodtypebdpbinomial,
bdpnormal, and bdpsurvivalfix_alpha input which allows users to
set the historical data weight at alpha_maxtwo_side input to logicalprint, summary, plot
methodsbdpnormal / bdpbinomialThese binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.