Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (19.1%) to scientific vocabulary
Keywords
descriptive-statistics
flextable
frequency-table
html-report
msword
officer
r
rstats
Keywords from Contributors
interpretability
ropensci
standardization
literate-programming
pandoc
hack
Last synced: 6 months ago
·
JSON representation
Repository
Easy and thorough description of datasets
Basic Info
- Host: GitHub
- Owner: DanChaltiel
- Language: R
- Default Branch: main
- Homepage: https://danchaltiel.github.io/crosstable/
- Size: 41.8 MB
Statistics
- Stars: 116
- Watchers: 3
- Forks: 8
- Open Issues: 12
- Releases: 17
Topics
descriptive-statistics
flextable
frequency-table
html-report
msword
officer
r
rstats
Created almost 6 years ago
· Last pushed about 1 year ago
Metadata Files
Readme
Changelog
Codemeta
README.Rmd
---
output:
github_document:
html_preview: false
---
```{r setup, include=FALSE}
library(knitr)
knitr::opts_chunk$set(
collapse=TRUE,
comment="#>",
fig.path="man/figures/README-",
fig.height = 7,
out.width="100%"
)
library(crosstable)
crosstable_options(
crosstable_fontsize_body = 8,
crosstable_padding_v = 0
)
# options(Encoding="UTF-8")
# library(officer)
# library(flextable)
```
# crosstable
[](http://www.gnu.org/licenses/gpl-3.0.html)
[](https://lifecycle.r-lib.org/articles/stages.html)
[](https://CRAN.R-project.org/package=crosstable)
[](https://r-pkg.org/pkg/crosstable)
[](https://github.com/DanChaltiel/crosstable)
[](https://app.codecov.io/gh/DanChaltiel/crosstable?branch=main)
[](https://github.com/DanChaltiel/crosstable/actions/workflows/check-standard.yaml)
[](https://cran.r-project.org/)
Crosstable is a package centered on a single function, `crosstable`, which easily computes descriptive statistics on datasets. It can use the `tidyverse` syntax and is interfaced with the package `officer` to create automatized reports.
## Installation
```{r run-numeric-md, include=FALSE}
last_cran = pkgsearch::cran_package("crosstable")$Version
# last_tag = dplyr::last(names(git2r::tags()))
last_tag = purrr::map_dbl(git2r::tags(), ~{
if(is.null(.x$tagger)) return(NA)
as.POSIXct(.x$tagger$when)
}) %>% sort() %>% names() %>% dplyr::last()
git_head = git2r::revparse_single(git2r::repository(),"HEAD") #sapply(git_head, print)
last_commit = substr(git_head$sha, 1,7)
out = c(
"```{r install, eval=FALSE}",
'# Install last version available on CRAN',
'install.packages("crosstable")',
'',
'# Install development version on Github',
'devtools::install_github("DanChaltiel/crosstable", build_vignettes=TRUE)',
'',
'# Install specific commit or tagged version (for reproducibility purpose)',
knit_expand(text='devtools::install_github("DanChaltiel/crosstable@{{last_commit}}", build_vignettes=TRUE)'),
knit_expand(text='devtools::install_github("DanChaltiel/crosstable@{{last_tag}}", build_vignettes=TRUE)'),
"```"
)
```
`r paste(knit(text = out), collapse = '\n')`
Note that, for reproducibility purpose, an even better solution would be to use [`renv`](https://rstudio.github.io/renv/articles/renv.html).
## Overview
Here are 2 examples to try and show you the main features of `crosstable`. See the [documentation website](https://danchaltiel.github.io/crosstable/) for more.
#### Example #1
> Dear crosstable, using the `mtcars2` dataset, please describe columns `disp` and `vs` depending on the levels of column `am`, with totals in both rows and columns, and with proportions formatted with group size, percent on row and percent on column, with no decimals.
```{r usage1, eval=TRUE, echo=TRUE, results="hide", warning=FALSE, message=FALSE}
library(crosstable)
ct1 = crosstable(mtcars2, c(disp, vs), by=am, total="both",
percent_pattern="{n} ({p_row}/{p_col})", percent_digits=0) %>%
as_flextable()
ct1
```
```{r, include=FALSE}
flextable::save_as_image(ct1, "man/figures/ct1.png")
```
With only a few arguments, we did select which column to describe (`c(disp, vs)`), define a grouping variable (`by=am`), set the percentage calculation in row/column (`percent_pattern=`), and ask for totals (`total=`).
Since `mtcars2` is a dataset with labels, they are displayed instead of the variable name (see [here](https://danchaltiel.github.io/crosstable/articles/crosstable.html#dataset-modified-mtcars) for how to add some).
As `crosstable()` is returning a `data.frame`, we use `as_flextable()` to output a beautiful HTML table. This one can even be exported to MS Word with a few more lines of code (see [here](https://danchaltiel.github.io/crosstable/articles/crosstable-report.html) to learn how).
#### Example #2
Here is a more advanced example.
> Dear crosstable, using the `mtcars2` dataset again, please describe all columns whose name starts with "cy" and those whose name ends with "at", depending on the levels of both columns `am` and `vs`, without considering labels, applying `mean()` and `quantile()` as summary function, with `probs` 25% and 75% defined for this latter function, and with 3 decimals for numeric variables:
```{r usage2, eval=TRUE, echo=TRUE, results="hide", warning=FALSE, message=FALSE}
ct2 = crosstable(mtcars2, c(starts_with("cy"), ends_with("at")), by=c(am, vs),
label=FALSE, num_digits=3, funs=c(mean, quantile),
funs_arg=list(probs=c(.25,.75))) %>%
as_flextable(compact=TRUE, header_show_n=1:2)
ct2
```
```{r, include=FALSE}
flextable::save_as_image(ct2, "man/figures/ct2.png")
file.remove("man/figures/README-usage1-1.png")
file.remove("man/figures/README-usage2-1.png")
```
Here, the variables were selected using `tidyselect` helpers and the summary functions `mean` and `quantile` were specified, along with argument `probs` for the latter. Using `label=FALSE` allowed to see which variables were selected but it is best to keep the labels in the final table.
In `as_flextable()`, the `compact=TRUE` option yields a longer output, which may be more suited in some contexts (for instance for publication), and `header_show_n=1:2` adds the group sizes for both rows of the header.
## Documentation
You can find the whole documentation on the [dedicated website](https://danchaltiel.github.io/crosstable/):
+ `vignette("crosstable")` for a first step-by-step guide on how to use `crosstable` ([link](https://danchaltiel.github.io/crosstable/articles/crosstable.html))
+ `vignette("crosstable-report")` for more on creating MS Word reports using either `{officer}` or `Rmarkdown` ([link](https://danchaltiel.github.io/crosstable/articles/crosstable-report.html))
+ `vignette("pertent_pattern")` for more on how to use `percent_pattern` ([link](https://danchaltiel.github.io/crosstable/articles/crosstable-selection.html))
+ `vignette("crosstable-selection")` for more on variable selection ([link](https://danchaltiel.github.io/crosstable/articles/crosstable-selection.html)), although you should better read https://tidyselect.r-lib.org/articles/syntax.html.
There are lots of other features you can learn about there, for instance (non-exhaustive list):
- description of correlation, dates, and survival data ([link](https://danchaltiel.github.io/crosstable/articles/crosstable.html#miscellaneous-1))
- variable selection with functions, e.g. `is.numeric` ([link](https://danchaltiel.github.io/crosstable/articles/crosstable-selection.html#select-with-predicate-functions))
- formula interface, allowing to describe more mutated columns, e.g. `sqrt(mpg)` or `Surv(time, event)` ([link](https://danchaltiel.github.io/crosstable/articles/crosstable-selection.html#select-with-a-formula))
- automatic computation of statistical tests ([link](https://danchaltiel.github.io/crosstable/articles/crosstable.html#tests)) and of effect sizes ([link](https://danchaltiel.github.io/crosstable/articles/crosstable.html#effects))
- global options to avoid repeating arguments ([link](https://danchaltiel.github.io/crosstable/reference/crosstable_options.html))
## Getting help and giving feedback
If you have a question about how to use `crosstable`, please ask on [StackOverflow](https://stackoverflow.com/) with the tag `crosstable`. You can `@DanChaltiel` in a comment if you are struggling to get answers. Don't forget to add a minimal **repr**oducible **ex**ample to your question, ideally using the [reprex](https://reprex.tidyverse.org/) package.
If you miss any feature that you think would belong in `crosstable`, please fill a [Feature Request](https://github.com/DanChaltiel/crosstable/issues/new/choose) issue.
If you encounter an unexpected error while using `crosstable`, please fill a [Bug Report](https://github.com/DanChaltiel/crosstable/issues/new/choose) issue. In case of any installation problem, try the solutions proposed in [this article](https://danchaltiel.github.io/crosstable/articles/crosstable-install.html) first.
## Acknowledgement
In its earliest development phase, `crosstable` was based on the awesome package [`biostat2`](https://github.com/eusebe/biostat2) written by David Hajage. Thanks David!
Owner
- Name: Dan Chaltiel
- Login: DanChaltiel
- Kind: user
- Location: France
- Company: @gustaveroussy
- Twitter: DanChaltiel
- Repositories: 4
- Profile: https://github.com/DanChaltiel
Data analyst (PharmD, PhD) and programming enthusiast. I love to code in R (tidyverse FTW!) but also in Kotlin/Java (Android), Python, PHP, JS, Arduino...
CodeMeta (codemeta.json)
{
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
"@type": "SoftwareSourceCode",
"identifier": "crosstable",
"description": "Create descriptive tables for continuous and categorical variables. Apply summary statistics and counting function, with or without a grouping variable, and create beautiful reports using 'rmarkdown' or 'officer'. You can also compute effect sizes and statistical tests if needed.",
"name": "crosstable: Crosstables for Descriptive Analyses",
"relatedLink": [
"https://danchaltiel.github.io/crosstable/",
"https://CRAN.R-project.org/package=crosstable"
],
"codeRepository": "https://github.com/DanChaltiel/crosstable/",
"issueTracker": "https://github.com/DanChaltiel/crosstable/issues/",
"license": "https://spdx.org/licenses/GPL-3.0",
"version": "0.8.2",
"programmingLanguage": {
"@type": "ComputerLanguage",
"name": "R",
"url": "https://r-project.org"
},
"runtimePlatform": "R version 4.4.1 (2024-06-14 ucrt)",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"author": [
{
"@type": "Person",
"givenName": "Dan",
"familyName": "Chaltiel",
"email": "dan.chaltiel@gmail.com",
"@id": "https://orcid.org/0000-0003-3488-779X"
}
],
"maintainer": [
{
"@type": "Person",
"givenName": "Dan",
"familyName": "Chaltiel",
"email": "dan.chaltiel@gmail.com",
"@id": "https://orcid.org/0000-0003-3488-779X"
}
],
"softwareSuggestions": [
{
"@type": "SoftwareApplication",
"identifier": "callr",
"name": "callr",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=callr"
},
{
"@type": "SoftwareApplication",
"identifier": "covr",
"name": "covr",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=covr"
},
{
"@type": "SoftwareApplication",
"identifier": "crayon",
"name": "crayon",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=crayon"
},
{
"@type": "SoftwareApplication",
"identifier": "xml2",
"name": "xml2",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=xml2"
},
{
"@type": "SoftwareApplication",
"identifier": "digest",
"name": "digest",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=digest"
},
{
"@type": "SoftwareApplication",
"identifier": "gt",
"name": "gt",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=gt"
},
{
"@type": "SoftwareApplication",
"identifier": "expss",
"name": "expss",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=expss"
},
{
"@type": "SoftwareApplication",
"identifier": "ggplot2",
"name": "ggplot2",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=ggplot2"
},
{
"@type": "SoftwareApplication",
"identifier": "gmodels",
"name": "gmodels",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=gmodels"
},
{
"@type": "SoftwareApplication",
"identifier": "Hmisc",
"name": "Hmisc",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=Hmisc"
},
{
"@type": "SoftwareApplication",
"identifier": "hms",
"name": "hms",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=hms"
},
{
"@type": "SoftwareApplication",
"identifier": "jsonlite",
"name": "jsonlite",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=jsonlite"
},
{
"@type": "SoftwareApplication",
"identifier": "knitr",
"name": "knitr",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=knitr"
},
{
"@type": "SoftwareApplication",
"identifier": "lubridate",
"name": "lubridate",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=lubridate"
},
{
"@type": "SoftwareApplication",
"identifier": "openxlsx",
"name": "openxlsx",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=openxlsx"
},
{
"@type": "SoftwareApplication",
"identifier": "rmarkdown",
"name": "rmarkdown",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=rmarkdown"
},
{
"@type": "SoftwareApplication",
"identifier": "sloop",
"name": "sloop",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=sloop"
},
{
"@type": "SoftwareApplication",
"identifier": "stringi",
"name": "stringi",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=stringi"
},
{
"@type": "SoftwareApplication",
"identifier": "survival",
"name": "survival",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=survival"
},
{
"@type": "SoftwareApplication",
"identifier": "systemfonts",
"name": "systemfonts",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=systemfonts"
},
{
"@type": "SoftwareApplication",
"identifier": "tidyselect",
"name": "tidyselect",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=tidyselect"
},
{
"@type": "SoftwareApplication",
"identifier": "testthat",
"name": "testthat",
"version": ">= 3.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=testthat"
},
{
"@type": "SoftwareApplication",
"identifier": "withr",
"name": "withr",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=withr"
},
{
"@type": "SoftwareApplication",
"identifier": "waldo",
"name": "waldo",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=waldo"
}
],
"softwareRequirements": {
"1": {
"@type": "SoftwareApplication",
"identifier": "R",
"name": "R",
"version": ">= 3.6.0"
},
"2": {
"@type": "SoftwareApplication",
"identifier": "checkmate",
"name": "checkmate",
"version": ">= 1.9.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=checkmate"
},
"3": {
"@type": "SoftwareApplication",
"identifier": "cli",
"name": "cli",
"version": ">= 3.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=cli"
},
"4": {
"@type": "SoftwareApplication",
"identifier": "dplyr",
"name": "dplyr",
"version": ">= 1.1.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=dplyr"
},
"5": {
"@type": "SoftwareApplication",
"identifier": "flextable",
"name": "flextable",
"version": ">= 0.5.1",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=flextable"
},
"6": {
"@type": "SoftwareApplication",
"identifier": "forcats",
"name": "forcats",
"version": ">= 1.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=forcats"
},
"7": {
"@type": "SoftwareApplication",
"identifier": "glue",
"name": "glue",
"version": ">= 1.3.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=glue"
},
"8": {
"@type": "SoftwareApplication",
"identifier": "lifecycle",
"name": "lifecycle",
"version": ">= 0.2.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=lifecycle"
},
"9": {
"@type": "SoftwareApplication",
"identifier": "officer",
"name": "officer",
"version": ">= 0.4.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=officer"
},
"10": {
"@type": "SoftwareApplication",
"identifier": "purrr",
"name": "purrr",
"version": ">= 0.2.3",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=purrr"
},
"11": {
"@type": "SoftwareApplication",
"identifier": "rlang",
"name": "rlang",
"version": ">= 1.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=rlang"
},
"12": {
"@type": "SoftwareApplication",
"identifier": "stats",
"name": "stats"
},
"13": {
"@type": "SoftwareApplication",
"identifier": "stringr",
"name": "stringr",
"version": ">= 1.4.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=stringr"
},
"14": {
"@type": "SoftwareApplication",
"identifier": "tibble",
"name": "tibble",
"version": ">= 1.1",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=tibble"
},
"15": {
"@type": "SoftwareApplication",
"identifier": "tidyr",
"name": "tidyr",
"version": ">= 1.0.0",
"provider": {
"@id": "https://cran.r-project.org",
"@type": "Organization",
"name": "Comprehensive R Archive Network (CRAN)",
"url": "https://cran.r-project.org"
},
"sameAs": "https://CRAN.R-project.org/package=tidyr"
},
"16": {
"@type": "SoftwareApplication",
"identifier": "utils",
"name": "utils"
},
"SystemRequirements": null
},
"fileSize": "1612.194KB",
"releaseNotes": "https://github.com/DanChaltiel/crosstable/blob/master/NEWS.md",
"readme": "https://github.com/DanChaltiel/crosstable/blob/main/README.md",
"contIntegration": [
"https://app.codecov.io/gh/DanChaltiel/crosstable?branch=main",
"https://github.com/DanChaltiel/crosstable/actions/workflows/check-standard.yaml"
],
"developmentStatus": "https://lifecycle.r-lib.org/articles/stages.html",
"keywords": [
"r",
"descriptive-statistics",
"rstats",
"html-report",
"frequency-table",
"msword",
"flextable",
"officer"
]
}
GitHub Events
Total
- Issues event: 15
- Watch event: 6
- Issue comment event: 2
- Push event: 14
- Create event: 6
Last Year
- Issues event: 15
- Watch event: 6
- Issue comment event: 2
- Push event: 14
- Create event: 6
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Dan Chaltiel | d****l@g****m | 919 |
| github-actions | 4****] | 96 |
| David Hajage | d****e@g****m | 36 |
| David Hajage | d****d@l****n | 4 |
| Hadley Wickham | h****m@g****m | 3 |
| Jim Hester | j****r@g****m | 1 |
| DavisVaughan | d****s@r****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 84
- Total pull requests: 8
- Average time to close issues: 2 months
- Average time to close pull requests: 15 days
- Total issue authors: 20
- Total pull request authors: 5
- Average comments per issue: 1.21
- Average comments per pull request: 1.5
- Merged pull requests: 6
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 17
- Pull requests: 0
- Average time to close issues: 2 months
- Average time to close pull requests: N/A
- Issue authors: 3
- Pull request authors: 0
- Average comments per issue: 0.29
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- DanChaltiel (59)
- sda030 (8)
- davidgohel (3)
- philipmgrant (2)
- lionel- (1)
- DanChartrand (1)
- TonisOrmisson (1)
- linem7 (1)
- bberger94 (1)
- linusgun (1)
- kathrynagnas (1)
- Lpierott (1)
- tokofran (1)
- hadley (1)
- technocrat (1)
Pull Request Authors
- hadley (3)
- DanChaltiel (2)
- jimhester (1)
- DavisVaughan (1)
- lionel- (1)
Top Labels
Issue Labels
bug (43)
enhancement (28)
bug 🐞 (6)
enhancement ✨ (6)
questionning (2)
installation (1)
test (1)
questionning ❓ (1)
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- cran 5,146 last-month
- Total docker downloads: 55
- Total dependent packages: 1
- Total dependent repositories: 1
- Total versions: 13
- Total maintainers: 1
cran.r-project.org: crosstable
Crosstables for Descriptive Analyses
- Homepage: https://danchaltiel.github.io/crosstable/
- Documentation: http://cran.r-project.org/web/packages/crosstable/crosstable.pdf
- License: GPL-3
-
Latest release: 0.8.1
published over 1 year ago
Rankings
Stargazers count: 3.7%
Forks count: 7.3%
Downloads: 8.4%
Average: 12.3%
Dependent packages count: 18.2%
Dependent repos count: 24.0%
Maintainers (1)
Last synced:
about 1 year ago
Dependencies
DESCRIPTION
cran
- R >= 3.1.0 depends
- checkmate * imports
- cli * imports
- dplyr >= 1.0.0 imports
- flextable >= 0.5.8 imports
- forcats * imports
- glue * imports
- lifecycle * imports
- officer >= 0.4 imports
- purrr * imports
- rlang >= 0.4.7 imports
- stats * imports
- stringr * imports
- tibble * imports
- tidyr * imports
- tidyselect * imports
- Hmisc * suggests
- callr * suggests
- covr * suggests
- crayon * suggests
- digest * suggests
- expss * suggests
- ggplot2 * suggests
- gmodels * suggests
- gt * suggests
- jsonlite * suggests
- knitr * suggests
- openxlsx * suggests
- rmarkdown * suggests
- sloop * suggests
- stringi * suggests
- survival * suggests
- systemfonts * suggests
- testthat >= 3.0.0 suggests
- waldo * suggests
- withr * suggests
- xml2 * suggests
.github/workflows/bump_version_dev.yaml
actions
- EndBug/add-and-commit v7.5.0 composite
- actions/checkout v2 composite
- r-lib/actions/setup-r v2 composite
.github/workflows/check-standard.yaml
actions
- actions/checkout v3 composite
- r-lib/actions/check-r-package v2 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/pkgdown.yaml
actions
- JamesIves/github-pages-deploy-action v4.4.1 composite
- actions/checkout v3 composite
- r-lib/actions/setup-pandoc v2 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite
.github/workflows/test-coverage.yaml
actions
- actions/checkout v3 composite
- actions/upload-artifact v3 composite
- r-lib/actions/setup-r v2 composite
- r-lib/actions/setup-r-dependencies v2 composite