In this vignette, you can see what a codebook generated from a dataset with rich
metadata looks like. This dataset includes mock data for a short German Big Five
personality inventory and an age variable. The dataset follows the format created
when importing data from formr.org. However, data imported
using the haven
package uses similar metadata. You can also add such metadata
yourself, or use the codebook package for unannotated datasets.
As you can see below, the codebook
package automatically computes reliabilities
for multi-item inventories, generates nicely labelled plots and outputs summary statistics.
The same information is also stored in a table, which you can export to various formats.
Additionally, codebook
can show you different kinds of (labelled) missing values, and show you common
missingness patterns.
As you cannot see, but search engines
will, the codebook
package also generates JSON-LD metadata for the dataset. If you share your codebook as an HTML file online, this metadata should make it easier for others
to find your data. See what Google sees here.
knit_by_pkgdown <- !is.null(knitr::opts_chunk$get("fig.retina")) knitr::opts_chunk$set(warning = FALSE, message = TRUE, error = FALSE) ggplot2::theme_set(ggplot2::theme_bw()) library(codebook) data("bfi", package = 'codebook') if (!knit_by_pkgdown) { library(dplyr) bfi <- bfi %>% select(-starts_with("BFIK_extra"), -starts_with("BFIK_open"), -starts_with("BFIK_consc")) } set.seed(1) bfi$age <- rpois(nrow(bfi), 30) library(labelled) var_label(bfi$age) <- "Alter"
By default, we only set the required metadata attributes name
and description
to sensible values. However, there is a number of attributes you can set to
describe the data better. Find out more.
metadata(bfi)$name <- "MOCK Big Five Inventory dataset (German metadata demo)" metadata(bfi)$description <- "a small mock Big Five Inventory dataset" metadata(bfi)$identifier <- "doi:10.5281/zenodo.1326520" metadata(bfi)$datePublished <- "2016-06-01" metadata(bfi)$creator <- list( "@type" = "Person", givenName = "Ruben", familyName = "Arslan", email = "ruben.arslan@gmail.com", affiliation = list("@type" = "Organization", name = "MPI Human Development, Berlin")) metadata(bfi)$citation <- "Arslan (2016). Mock BFI data." metadata(bfi)$url <- "https://rubenarslan.github.io/codebook/articles/codebook.html" metadata(bfi)$temporalCoverage <- "2016" metadata(bfi)$spatialCoverage <- "Goettingen, Germany"
# We don't want to look at the code in the codebook. knitr::opts_chunk$set(warning = TRUE, message = TRUE, echo = FALSE)
codebook(bfi, metadata_table = knit_by_pkgdown, metadata_json = TRUE)
r ifelse(knit_by_pkgdown, '', '### Codebook table')
if (!knit_by_pkgdown) { codebook:::escaped_table(codebook_table(bfi)) }
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.