The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
Automated Statistical Analysis, Visualization, and Multi-Format Narrative Reporting in R
Authors: Mr. Mahesh Divakaran & Dr. Gunjan Singh (Amity School of Applied Sciences, Amity University Lucknow) - Prof. Dr. Jayadevan Shreedharan (Gulf Medical University)
EasyStat bridges the gap between statistical output and actionable insight. A single function call delivers the statistical result, a plain-language narrative interpretation, and publication-ready tables, rendered in the RStudio Viewer, the R console, or Microsoft Word.
User-facing p-values are reported as percentages rounded to 4 decimal places, while raw model objects still retain the original numeric p-values for advanced use.
# From CRAN (when available)
install.packages("EasyStat")
# Development version from GitHub
# install.packages("devtools")
devtools::install_github("itsmdivakaran/Easystat")
# From local source
install.packages("path/to/EasyStat", repos = NULL, type = "source")library(EasyStat)
# Linear regression with narrative
easy_regression(mpg ~ wt + hp, data = mtcars)
# Logistic regression with odds ratios
easy_logistic_regression(am ~ mpg + wt, data = mtcars)
# t-test
easy_ttest(mpg ~ am, data = mtcars)
# One-way ANOVA
easy_anova(Sepal.Length ~ Species, data = iris)
# Descriptive statistics for multiple variables
easy_describe(mtcars, vars = c("mpg", "hp", "wt"))
# Correlation heatmap
easy_correlation_heatmap(mtcars, vars = c("mpg", "hp", "wt", "qsec", "drat"))
# Export any result to Word
result <- easy_logistic_regression(am ~ mpg + wt, data = mtcars)
export_to_word(result, file = "report.docx", title = "Transmission Model",
author = "Mahesh Divakaran, Gunjan Singh, Jayadevan Shreedharan")| Step | Module | Role |
|---|---|---|
| 1 | Core Statistical Engine | Wraps lm(), glm(), t.test(),
aov(), chisq.test(), var.test(),
cor.test() |
| 2 | Metric Extractor | Uses model summaries and broom helpers to extract
p-values, effect sizes, CIs, and fit metrics |
| 3 | Narrative Generator Module | Applies conditional logic to produce plain-language explanations |
| 4 | Unified Result Object | Returns easystat_result S3 objects with tables,
narrative, and optional plots |
| Function | Description |
|---|---|
easy_describe() |
21-statistic summary for one or more numeric variables |
easy_group_summary() |
Stratified descriptives by a grouping factor |
| Function | Model | Key Output |
|---|---|---|
easy_regression() |
Linear regression | R-squared, ANOVA table, diagnostics, influential observations |
easy_logistic_regression() |
Binary logistic regression | Odds ratios, OR CIs, classification table, McFadden pseudo-R2 |
| Function | Test | Effect Size |
|---|---|---|
easy_ttest() |
Independent / one-sample t-test | Cohen’s d |
easy_anova() |
One-way ANOVA with post-hoc context | eta-squared |
easy_chisq() |
Chi-square independence and GOF | Cramér’s V |
easy_ztest() |
One- and two-sample z-test | Cohen’s d |
easy_ftest() |
F-test for equality of variances | Variance ratio + CI |
easy_correlation() |
Pearson / Spearman / Kendall correlation and matrix | r, r-squared |
easy_wilcox() |
Wilcoxon rank-sum / signed-rank test | Median comparison + CI |
easy_kruskal() |
Kruskal-Wallis test | Rank-based eta-squared |
| Function | Plot type |
|---|---|
easy_histogram() |
Histogram with normal-curve overlay |
easy_boxplot() |
Grouped box-and-whisker plot |
easy_scatter() |
Scatter plot with regression line and R-squared |
easy_barplot() |
Count or mean (+/- SE) bar chart |
easy_qqplot() |
Q-Q normality plot |
easy_density() |
Kernel density curve, optionally grouped |
easy_correlation_heatmap() |
Annotated pairwise correlation heatmap |
easy_regression_diagnostics() |
Fitted-vs-residuals diagnostic plot |
easy_odds_ratio_plot() |
Logistic regression odds-ratio plot |
easy_autoplot() |
Smart dispatcher that picks the right plot for a result |
| Function | Description |
|---|---|
theme_easystat() |
Consistent ggplot2 theme for all plots |
export_to_word() |
Formatted .docx report with flextable and officer |
| Mode | Trigger |
|---|---|
| RStudio HTML Viewer | Auto-detected in interactive sessions |
| Console | Scripts, terminals, non-interactive sessions |
Word .docx |
export_to_word() |
source(system.file("smoke_test.R", package = "EasyStat"))If you use EasyStat in your research, please cite:
Divakaran M., Singh G., & Shreedharan J. (2026). EasyStat: Automated Statistical Analysis, Visualization and Multi-Format Narrative Reporting in R (Version 2.0.0). Amity University Lucknow & Gulf Medical University. https://itsmdivakaran.github.io/Easystat/index.html
MIT (c) 2026 EasyStat Authors. See LICENSE for details.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.