CRAN release: [soon]
This new version introduces a completely new analytic framework which breaks with earlier versions of specr. See this vignette for a comprehensive tutorial on how to use this new framework.
A new function called setup()
is introduced and
replaces the original setup_specs()
to make the
specification of analytical choices more intuitive and comprehensive.
Most importantly, it allows to set up all specifications (now also
including subset analyses, additions to the formula, etc.) a priori,
i.e., before the estimation of all models.
tidyverse
functions such as e.g., filter()
.
This way, one can make sure a priori that only reasonable specifications
are actually included.specr.setup
, which can be
investigated using e.g., summary()
or
plot()
.The function run_specs()
is replaced by
specr()
, which now only wraps around setup()
to estimate all models. Most changes are related to increasing speed of
the computations.
furrr
) to reduce fitting time (finally solving
github issue #1).specr.object
, which can be
investigated using generic function such as summary()
and
plot()
.For more information about these major changes and how to use the new version of specr, see this vignette.
Please note that the functions from earlier versions are still available, but deprecated. It is hence still possible to use the older framework as implemented in version 0.2.1, but we suggest to move to the new framework of version 0.3.0 due to its increased speed and flexibility.
This version of specr
was something I wanted to tackle
for a while. Although the previous versions seem to have embraced by the
community and several relevant papers used them in interesting ways,
certain issues kept coming up (ranging from slow fitting process to
wanting to incorporate more complex analytical decisions and choices).
This version is thus heavily inspired by the growing community of
scholars who provide feedback and suggestions via github. Thank you to
all of you! But for this version, I want to thank two people
particularly:
Big thanks go to Matti Vuorre who explored ways to parallelize specification curve analysis in this blogpost, which became the basis for the implementation in specr.
Many thanks to Kasper Welbers who contributed some essential code within the core function.
Thanks also to Johannes Gruber who provided support in the final stages of building this package.
Development version released: 2020-12-04
Some minor updates (related to gituhub issues) and bug fixes:
all.comb = TRUE
; solved github issue #21)run_specs()
now allows to add sets of control variabels
(github issue #11)broom::tidy()
and
broom::glance()
The package further now allows to integrate:
CRAN release: 2020-03-26
First stable version
Tested in several environments.
Primary function is run_specs()
, which allows to
specify analytic choices and estimate all models across
specifications.
No parallelization of the fitting process (can take very long if model fitting process is complex).
Implementation of random effect modelling and structural equation modeling potentially possible, but still unclear.
Does not allow to specify all possible combinations of control variables (github issue #21).
Does not allow to specify sets of control variables (github issue #11)