Skip to main content

Crate inferust

Crate inferust 

Source
Expand description

§inferust

Statistical modeling for Rust — a statsmodels-inspired library.

§Modules

ModuleContents
regressionOLS/WLS with fast/stable solvers, robust SEs, confidence intervals, influence/residual diagnostics, and full summary output
glmBinary logistic and Poisson regression with Wald inference, covariance, residual diagnostics, likelihood-ratio tests, prediction intervals, classification metrics, and post-estimation helpers
discreteProbit, negative binomial, and multinomial logit starters
glm_familyGeneric Gaussian/Binomial/Poisson GLM front-end
time_seriesAR/ARIMA starters plus ACF, PACF, and Ljung-Box diagnostics
diagnosticsVIF, Breusch-Pagan, White, and RESET diagnostics
evaluationRegression/classification metrics and bootstrap intervals
robustHuber robust linear regression
geeIndependence-working-correlation GEE starters
mixedRandom-intercept mixed linear model starter
hypothesist-tests, chi-squared, one-way ANOVA
descriptiveSummary stats (mean, std, skewness, kurtosis, quartiles)
dataMinimal named-column data frame and formula-based OLS/WLS/logistic/Poisson fitting
correlationPearson, Spearman, correlation matrices

§OLS solver strategy

regression::Ols defaults to a fast Cholesky solve for full-rank, well-conditioned designs. Use .stable() or regression::OlsSolver::Svd when you prefer the more robust SVD path. Use .robust() or regression::OlsCovariance for HC robust inference.

§Quick start

use inferust::regression::Ols;

let x = vec![vec![1.0], vec![2.0], vec![3.0], vec![4.0], vec![5.0]];
let y = vec![2.1, 3.9, 6.2, 7.8, 10.1];

Ols::new()
    .with_feature_names(vec!["hours".to_string()])
    .fit(&x, &y)
    .unwrap()
    .print_summary();

Re-exports§

pub use error::InferustError;
pub use error::Result;

Modules§

correlation
data
descriptive
diagnostics
discrete
error
evaluation
gee
glm
glm_family
hypothesis
mixed
regression
robust
time_series