10 ppl attended
Organisational matters
the next meeting will take place on the 10th January
Francesco Carrer will give a short intro on the tools for spatial statistics he’s been developing
Conferences, meetings and sessions
- CAA2022: The conference will probably take place in July (announcement via twitter ), but no exact dates have been released yet
SIG activities
- Teaching material list: Sophie Schmidt has shared a google document in the respective slack channel. Please invest some minutes of brainstorming to add the relevant materials you know.
Discussion
- interesting blogs
Show and tell
Show and tell focused on pipeline tools
Compiling software projects is similar to running data analysis scripts, one needs to run a number of scripts / functions in a certain order
Therefore there are pipeline tools for any kind of scripting language “out there”
Several pipeline tools can be found here: https://github.com/pditommaso/awesome-pipeline
Ben Marwick introduced the R packages {targets} and {renv}
- {targets}
- if you use Rmarkdown and don’t want all analysis steps to run every time you knit and dislike the caching knitr offers
- target “flips” the process
- the analysis steps are outsourced to functions in separate scripts
- _targets.R is the “recipe book” similar to a make-file that defines the run order of the scripts
- at the end the document is knitted
- this way: unchanged scripts are skipped (and there is a load function for data, which will “alert” the later scripts if the data has been changed)
- in the RMD you only reference to the images you create with the scripts
- especially well suited for tasks that take long to compute
- active maintainer
- corresponding article: https://doi.org/10.21105/joss.02959
- tutorial: https://wlandau.github.io/targets-tutorial/#1
- {renv}
- “better packrat”
- saves your package versions in a renv.lock file
- the Rprofile file sources renv action, which compares the versions of your session / project which those given in the renv.lock
- alerts you to changes and uses the package versions given in renv.lock, but doesn’t overwrite any of your packages (if you close the project, everything returns to default)
- three functions needed:
renv::init()
,renv::snapshot()
andrenv::restore()
- easier than the rrtools workflow using the DESCRIPTION file
- {targets}
Clemens showed the haskell based
Shake
and described the same steps as detailed in his blog post- shake only needs stack
- within a shakefile the rules in which order to run which scripts and what are input and output data are defined
- Clemens created some operators to reduce the complexity of the rules syntax in a shakefile
Next meeting: Monday, January 10, 2022
- everyone: Happy holidays and merry Christmas to everyone celebrating!
- Have a great start into the new year, looking forward to seeing you again!