# collapse Documentation and Resources

#### Sebastian Krantz

#### 2024-02-11

Source:`vignettes/collapse_documentation.Rmd`

`collapse_documentation.Rmd`

*collapse* is a C/C++ based package for data transformation
and statistical computing in R. It’s aims are:

- To facilitate complex data transformation, exploration and computing tasks in R.
- To help make R code fast, flexible, parsimonious and programmer friendly.

Documentation comes in 5 different forms:

## Built-In Structured Documentation

After installing *collapse*, you can call
`help("collapse-documentation")`

which will produce a central
help page providing a broad overview of the entire functionality of the
package, including direct links to all function documentation pages and
links to 13 further topical documentation pages (names in
`.COLLAPSE_TOPICS`

) describing how clusters of related
functions work together.

Thus *collapse* comes with a fully structured hierarchical
documentation which you can browse within R - and that provides
everything necessary to fully understand the package. The Documentation
is also available online.

The package page under `help("collapse-package")`

provides
some general information about the package and its design philosophy, as
well as a compact set of examples covering important functionality.

Reading `help("collapse-package")`

and
`help("collapse-documentation")`

is the most comprehensive
way to get acquainted with the package.
`help("collapse-documentation")`

is always the most
up-to-date resource.

## Cheatsheet

An up-to-date (v2.0) cheatsheet compactly summarizes the package.

## useR 2022 Presentation and Slides

I have presented collapse (v1.8) in some level of detail at useR 2022. A 2h video recording that provides a quite comprehensive introduction is available here. The corresponding slides are available here.

## Vignettes

Updated vignettes are

: A quick introduction to*collapse*for*tidyverse*Users*collapse*for*tidyverse*users: A quick view behind the scenes of class-agnostic R programming*collapse*’s Handling of R Objects

The other vignettes (only available online) do not cover major features introduced in versions >= 1.7, but contain much useful information and examples:

**Introduction to**: Introduces key features in a structured way*collapse*: Demonstrates the integration of collapse with*collapse*and*dplyr**dplyr*/*tidyverse*workflows and associated performance improvements: Demonstrates the integration of collapse with*collapse*and*plm**plm*and shows examples of efficient programming with panel data: Shows how collapse and*collapse*and*data.table**data.table*may be used together in a harmonious way: Shows how collapse can be used to efficiently manipulate*collapse*and*sf**sf*data frames

## Blog

I maintain a blog
linked to Rbloggers.com where
I introduced *collapse* with some compact posts covering central
functionality. Among these, the post about programming
with *collapse* is useful for developers.