Skip to contents

The dessert package

The dessert package allows you to automatically generate methodological appendices for your research workflows. Just supply a data or model object, and dessert will cook up something sweet! The package is still under development, so please contribute your own dessert recipe if you’re missing one. The resulting reports can be exported in different document formats (e.g., HTML or PDF) and are easy to share. Let’s open up your research workflow and whip up a dessert!

Set-up

The development version of the dessert package can be installed from GitHub with:

# install.packages("devtools")
devtools::install_github("gerkovink/dessert")

After installing dessert, you can load the package into your R workspace:

The data we’ll use in this vignette is the boys dataset from the mice package. This is an incomplete dataset (\(n = 748\)) with cross-sectional data on \(9\) growth-related variables. We load the incomplete data with:

library(mice)
str(boys)
#> 'data.frame':    748 obs. of  9 variables:
#>  $ age: num  0.035 0.038 0.057 0.06 0.062 0.068 0.068 0.071 0.071 0.073 ...
#>  $ hgt: num  50.1 53.5 50 54.5 57.5 55.5 52.5 53 55.1 54.5 ...
#>  $ wgt: num  3.65 3.37 3.14 4.27 5.03 ...
#>  $ bmi: num  14.5 11.8 12.6 14.4 15.2 ...
#>  $ hc : num  33.7 35 35.2 36.7 37.3 37 34.9 35.8 36.8 38 ...
#>  $ gen: Ord.factor w/ 5 levels "G1"<"G2"<"G3"<..: NA NA NA NA NA NA NA NA NA NA ...
#>  $ phb: Ord.factor w/ 6 levels "P1"<"P2"<"P3"<..: NA NA NA NA NA NA NA NA NA NA ...
#>  $ tv : int  NA NA NA NA NA NA NA NA NA NA ...
#>  $ reg: Factor w/ 5 levels "north","east",..: 4 4 4 4 4 4 4 3 3 2 ...

This is an incomplete dataset. Therefore, we’ll request a missing data dessert.

Missing data dessert

Run the dessert() function on the incomplete dataset:

dessert(boys)

After inspecting the missingness, we can perform an analysis.

Linear regression dessert

We’ll use a simple linear regression model to predict boys’ height from their age:

mod <- lm(hgt~age, boys)
dessert(mod)

This is the end of the vignette. This document was generated using:

sessionInfo()
#> R version 4.2.3 (2023-03-15)
#> Platform: x86_64-pc-linux-gnu (64-bit)
#> Running under: Ubuntu 22.04.2 LTS
#> 
#> Matrix products: default
#> BLAS:   /usr/lib/x86_64-linux-gnu/openblas-pthread/libblas.so.3
#> LAPACK: /usr/lib/x86_64-linux-gnu/openblas-pthread/libopenblasp-r0.3.20.so
#> 
#> locale:
#>  [1] LC_CTYPE=C.UTF-8       LC_NUMERIC=C           LC_TIME=C.UTF-8       
#>  [4] LC_COLLATE=C.UTF-8     LC_MONETARY=C.UTF-8    LC_MESSAGES=C.UTF-8   
#>  [7] LC_PAPER=C.UTF-8       LC_NAME=C              LC_ADDRESS=C          
#> [10] LC_TELEPHONE=C         LC_MEASUREMENT=C.UTF-8 LC_IDENTIFICATION=C   
#> 
#> attached base packages:
#> [1] stats     graphics  grDevices utils     datasets  methods   base     
#> 
#> other attached packages:
#> [1] dessert_0.0.0.9001 mice_3.15.0       
#> 
#> loaded via a namespace (and not attached):
#>  [1] Rcpp_1.0.10       bslib_0.4.2       compiler_4.2.3    pillar_1.9.0     
#>  [5] jquerylib_0.1.4   tools_4.2.3       digest_0.6.31     lattice_0.20-45  
#>  [9] jsonlite_1.8.4    evaluate_0.20     memoise_2.0.1     lifecycle_1.0.3  
#> [13] tibble_3.2.1      pkgconfig_2.0.3   rlang_1.1.0       cli_3.6.1        
#> [17] yaml_2.3.7        pkgdown_2.0.7     xfun_0.38         fastmap_1.1.1    
#> [21] stringr_1.5.0     dplyr_1.1.1       knitr_1.42        desc_1.4.2       
#> [25] generics_0.1.3    fs_1.6.1          vctrs_0.6.1       sass_0.4.5       
#> [29] systemfonts_1.0.4 grid_4.2.3        rprojroot_2.0.3   tidyselect_1.2.0 
#> [33] glue_1.6.2        R6_2.5.1          textshaping_0.3.6 fansi_1.0.4      
#> [37] rmarkdown_2.21    tidyr_1.3.0       purrr_1.0.1       magrittr_2.0.3   
#> [41] backports_1.4.1   htmltools_0.5.5   ragg_1.2.5        utf8_1.2.3       
#> [45] stringi_1.7.12    cachem_1.0.7      broom_1.0.4