First CRAN release. The statistical code is unchanged from version 0.2.1, so every estimate produced with 0.2.0 or 0.2.1 is reproduced exactly; the release prepares the package for CRAN, completes its documentation and fixes one display issue.
n_prompts in simulate_ema() and
simulate_from_fit() (it was called T in 0.2.x,
which masks TRUE); the corresponding elements of the
returned objects are settings$n_prompts (simulations) and
n_prompts (FIML fits). Code written for 0.2.x must replace
T = by n_prompts =; the generated data are
unchanged.dm-graphs (the motif taxonomy,
d-separation and recoverability), testing-informativeness
(the silence test, the sensor-gap test and the fatigue check),
sensitivity-analysis (tilting, break-even values, the three
calibration designs and the missingness declaration) and
simulation-and-design (the simulator, every motif’s
parameters, design planning). The workflow vignette is revised.?silentema) describing the workflow,
the data format and the simulator.DESCRIPTION: method references with DOIs,
URL and BugReports fields pointing to the
GitHub repository and the documentation site; the title is
shortened.citation("silentema") now points to the CRAN page of
the package.recoverability, silence_test
or sensor_gap_test object with [ now returns a
plain data frame; previously the class was kept and the print method
showed an incomplete report. No estimate is affected.NA; state columns must be complete at
answered prompts (item-level missingness is reported instead of
producing NA results); a response column named other than
the default "R" must exist; the prompt index must be an
integer index without NA, also in
fatigue_check(); the “too few pairs/triples” messages
report the counts and hint at the prompt index.
bounds_support() checks its columns and returns the whole
scale for a person without any answered prompt (previously
NaN).fit_pairs() (and the tilted fits) warn when no person
reaches min_pairs complete pairs, instead of silently
returning NaN between-person summaries;
fit_fiml() starts from a diagonal between-person covariance
when fewer than three persons have enough pairs (previously it failed
for one to three persons), stops when the prompt index spans a single
prompt, and warns when prompt indices are missing for some persons;
fatigue_check() no longer fails when the prompt index has
fewer than four distinct values.tilt_profile(which = ) accepts a variable name;
plot.tilt_profile() reports unknown coefficient names;
plot.dm_graph() honors a user main;
print.delta_calibration() reports failed bootstrap
resamples; the EM loop of fit_fiml() checks for user
interrupts.Metadata release; no change to any R or C++ code, so every result produced with 0.2.0 is reproduced exactly (checked bit-for-bit on six simulation cells).
URL points to the OSF project; the placeholder
BugReports field is removed (contact the maintainer by
email).citation("silentema") uses the revised title of the
accompanying manuscript, “What skipped prompts hide: Detecting,
diagnosing, and correcting informative nonresponse in ecological
momentary assessment”.Revision after peer review of the accompanying manuscript.
calibrate_delta(method = "postskip") gains
burden = "fit": the simulated model includes a burden term
(motif M3) calibrated to the observed response persistence, so that the
post-skip calibration is valid under a declared M2 + M3 graph. The
number of simulated data sets is now n_sim (default 20;
formerly B = 10). The result reports the number of
crossings, and no crossing is reported as such.simulate_from_fit() gains days and
kappa_R, and stops with a clear message when the fitted
dynamics are not stable.recoverability() distinguishes, under reactivity (M6),
the recoverable assessment-conditioned kernel (Phi and Psi) from the
dynamics-recovered person mean, which is biased; the observed person
mean is judged by d-separation as for the other motifs.fit_tilt() returns every quantity from one undamped
weighted fit at the converged iterate, reports max_weight,
passes min_pairs through, and returns class
tilt_fit also at delta = 0.silence_test() gains poly (polynomial
degree in the lagged states) and seed;
fatigue_check() gains day and a print method;
summary.pairs_fit() uses a t(G - 1) reference;
coef(), vcov(), confint(),
nobs() methods for fits; plot() method for
calibrations; plot.dm_graph() redrawn.missingness_declaration() fills its sections from the
test, profile and calibration objects when they are supplied.delta length, weights);
functions that simulate or bootstrap restore the caller’s random-number
state.