Science Score: 49.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
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (20.5%) to scientific vocabulary
Last synced: 9 months ago
·
JSON representation
Repository
Basic Info
- Host: GitHub
- Owner: amaltawfik
- License: other
- Language: R
- Default Branch: main
- Homepage: https://amaltawfik.github.io/spicy/
- Size: 1.52 MB
Statistics
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 1
Created over 1 year ago
· Last pushed about 1 year ago
Metadata Files
Readme
Changelog
License
README.Rmd
---
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
out.width = "100%"
)
```
# spicy
[](https://cloud.r-project.org/web/packages/spicy/)
[](https://cranlogs.r-pkg.org/badges/grand-total/spicy)
[](https://github.com/amaltawfik/spicy/releases)
[](https://github.com/amaltawfik/spicy/actions/workflows/R-CMD-check.yaml)
[](https://www.repostatus.org/#active)
[](https://opensource.org/licenses/MIT)
[](https://doi.org/10.5281/zenodo.15397865)
spicy adds a dash of heat to data analysis, giving insights a whole new flavour!
It is designed to make variable exploration and descriptive statistics fast, expressive, and easy to use.
## What is spicy?
spicy is an R package for quick, consistent, and elegant exploration of data frames. It helps you:
- Extract variable metadata and display compact summaries of dataset variables using `varlist()` (with `vl()` as a convenient shortcut), including names, labels, values, classes, number of distinct non-missing values, number of valid observations, number of missing observations. Similar to the "Variable View" in SPSS or the "Variables Manager" in Stata.
- Compute frequency tables with `freq()`, row-wise means with `mean_n()`, row-wise sums with `sum_n()`, and counts of specific values using `count_n()` — all with automatic handling of missing data.
- Explore relationships between categorical variables using `cross_tab()` for contingency tables and `cramer_v()` for association strength.
- Copy data frames or result tables directly to the clipboard using `copy_clipboard()` for fast export to spreadsheets or text editors.
- Handle `labelled`, `factor`, `Date`, `POSIXct`, and other commonly used variable types.
All with intuitive functions that return clean, structured outputs.
---
## Installation
For the stable version, install from CRAN.
```r
install.packages("spicy")
```
You can install the development version of spicy from GitHub with:
```r
# install.packages("pak")
pak::pak("amaltawfik/spicy")
```
---
## Example usage
Here are some quick examples using built-in datasets:
```{r eval=FALSE}
library(spicy)
library(dplyr)
# Get a summary of all variables in the Viewer
varlist(iris)
```
```{r eval=FALSE}
# Get a summary of the variables that start with "d" in the Viewer
# Asterisks (*) in the title indicate that the data frame has been subsetted
vl(mtcars, starts_with("d"))
```
```{r echo=FALSE, message=FALSE}
library(spicy)
library(dplyr)
```
```{r eval=TRUE}
# Get a summary of all variables as a tibble
varlist(iris, tbl = TRUE)
# Tabulate frequencies with sort alphabetically (Z-A)
freq(iris, Species, sort = "name-")
# Cross-tab with column percentages
cross_tab(mtcars, cyl, gear)
# Cross-tab with row percentages
cross_tab(mtcars, cyl, gear, rowprct = TRUE)
# Cross-tab with column percentages grouped by a single variable
cross_tab(mtcars, cyl, gear, by = am)
# Compute row-wise mean/sum (all values must be valid by default) or specific value
df <- data.frame(
var1 = c(10, NA, 30, 40, 50),
var2 = c(5, NA, 15, NA, 25),
var3 = c(NA, 30, 20, 50, 10)
)
df
mean_n(df)
sum_n(df)
count_n(df, count = 10)
count_n(df, special = "NA")
df |> mutate(count30 = count_n(count = 30))
```
> All functions can be directly used in pipelines.
---
## Why use `spicy`?
- Clean, expressive output
- Works well with labelled survey data
- Handles weights, percentages, NA counts
- Great for exploring data and variables, teaching, or reporting
---
## Citation
If you use `spicy` in a publication or teaching material, please cite it as:
> Tawfik, A. (2025). *spicy: Tools for Data Management and Variable Exploration* (Version 0.1.0) [R package]. https://doi.org/10.5281/zenodo.15397865
You can also get the citation in R format by typing:
```r
citation("spicy")
```
Or [download the BibTeX citation](inst/citation.bib) directly.
---
## License
This package is licensed under the MIT license. See [`LICENSE`](LICENSE) for details.
Owner
- Name: Amal Tawfik
- Login: amaltawfik
- Kind: user
- Company: HESAV
- Repositories: 1
- Profile: https://github.com/amaltawfik
GitHub Events
Total
- Release event: 1
- Watch event: 4
- Push event: 145
- Create event: 4
Last Year
- Release event: 1
- Watch event: 4
- Push event: 145
- Create event: 4
Packages
- Total packages: 1
-
Total downloads:
- cran 482 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 1
- Total maintainers: 1
cran.r-project.org: spicy
Descriptive Statistics and Data Management Tools
- Homepage: https://github.com/amaltawfik/spicy/
- Documentation: http://cran.r-project.org/web/packages/spicy/spicy.pdf
- License: MIT + file LICENSE
-
Latest release: 0.1.0
published about 1 year ago
Rankings
Dependent packages count: 26.6%
Forks count: 29.0%
Dependent repos count: 32.8%
Stargazers count: 37.3%
Average: 42.5%
Downloads: 86.7%
Maintainers (1)
Last synced:
10 months ago