MyNixOS website logo
Description

Transparent and Assisted Linear Modeling Engine.

A transparent, modular, and base-R implemented statistical engine for linear regression (OLS), analysis of variance (ANOVA), and logistic regression (Logit). Designed under the principle of "assisted simplicity", it features an integrated methodological "customs" (Aduana) that automatically audits mathematical assumptions (e.g., multicollinearity, heteroskedasticity, normality, and perfect separation) and outputs publication-ready, APA-formatted tables. It deliberately avoids hidden heuristics and external dependencies, ensuring computational transparency and reproducibility for applied research.

OLSengine: Transparent and Assisted Linear Modeling in Base R ๐Ÿš€

OLSengine is an open-source R package designed for applied researchers. It provides a robust, zero-dependency mathematical engine for fundamental parametric and non-parametric statistics (OLS, ANOVA, and Logit).

Built under the philosophy of "Assisted Simplicity", OLSengine acts as a methodological customs filter ("Aduana"). It unifies model estimation and diagnostics in a single step, alerting researchers to violations of mathematical assumptions and guiding them toward robust alternatives without making automatic decisions behind their backs.

๐ŸŒŸ Core Features

  • Zero External Dependencies: Built entirely on pure Base R matrix algebra and native stats functions for maximum long-term stability and algorithmic transparency.
  • The Methodological Customs (Aduana): Automatically runs background diagnostics (Breusch-Pagan, Shapiro-Wilk, Levene, VIF, Hosmer-Lemeshow) and outputs actionable, literature-backed warnings.
  • Paper-Ready Outputs: Returns hierarchical tables formatted for direct inclusion in academic manuscripts (APA style), automatically calculating Effect Sizes (Cohen's f2, Partial Eta-squared, Odds Ratios) and exact p-values.
  • Minimalist Visualization: Generates publication-ready, grayscale plots (Forest Plots, Means with 95% CIs, and Logistic Probability Curves) without requiring ggplot2.

๐Ÿ“ฆ Installation

You can install the development version of OLSengine directly from GitHub using:

# install.packages("devtools")
devtools::install_github("msoto-perez/OLSengine")

๐Ÿ› ๏ธ Usage Examples

The package revolves around a single, powerful wrapper function: paper_engine().

1. OLS Regression (with Robust SE guidance)

Detects heteroskedasticity and multicollinearity. Users can explicitly request HC3 robust standard errors.

library(OLSengine)

# Standard execution
model_ols <- paper_engine(y ~ x1 + x2, data = my_data, model = "ols")

# Execution with HC3 Robust Standard Errors applied
model_robust <- paper_engine(y ~ x1 + x2, data = my_data, model = "ols", robust = TRUE)

# View APA-ready table
model_robust$tables$Table2_OLS_Estimation

# Generate Forest Plot
plot_engine(model_robust)

2. Experimental Differences (4-Way ANOVA Engine)

Intelligently handles independent or paired designs, supporting both parametric and non-parametric equivalents (One-Way ANOVA, Kruskal-Wallis, Paired t-test, Wilcoxon).

# Let the "Customs" automatically switch to Non-Parametric if Normality fails
model_exp <- paper_engine(y ~ group, data = experiment_data, model = "anova", non_parametric = "auto")

# Generate Means Plot with 95% CI error bars
plot_engine(model_exp)

3. Binary Logistic Regression (Logit)

Reports Odds Ratios, McFadden's Pseudo R-Squared, and Classification Accuracy.

model_logit <- paper_engine(buy ~ age + income, data = consumer_data, model = "logit")

# Generate predicted probability curve
plot_engine(model_logit)

๐Ÿ“– Citation

To cite OLSengine in publications, please use:

Soto-Pรฉrez, M. (2026).

OLSengine: A transparent and assisted linear modelling engine in base R (v1.0.0).

Zenodo. https://doi.org/10.5281/zenodo.19375852

Metadata

Version

1.0.0

License

Unknown

Platformsย (80)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    uefi
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-uefi
  • aarch64-windows
  • aarch64_be-none
  • arc-linux
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-linux
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • sh4-linux
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-uefi
  • x86_64-windows