#include <limits>#include <memory_resource>#include <nk/value/value.hpp>#include <nk/value/fn_handle.hpp>#include <tuple>Go to the source code of this file.
Classes | |
| struct | nk::stats::NlinfitResult |
| Nonlinear least-squares fit result ([beta, R, J, CovB, MSE] = nlinfit(X, y, fun, beta0)). More... | |
| struct | nk::stats::RobustfitResult |
| Robust linear regression via iteratively-reweighted least squares ([b, stats] = robustfit(X, y)). More... | |
| struct | nk::stats::RobustcovResult |
| Result of robust covariance estimation ([sigma, mu] = robustcov(X)). More... | |
| struct | nk::stats::GlmfitResult |
| GLM fit result. More... | |
| struct | nk::stats::LassoResult |
| Lasso result. More... | |
Enumerations | |
| enum class | nk::stats::RobustWeight { Andrews , Bisquare , Cauchy , Fair , Huber , Logistic , Ols , Talwar , Welsch } |
| Robust regression weight functions (MATLAB robustfit set). More... | |
| enum class | nk::stats::GlmDistribution { Normal , Binomial , Poisson , Gamma , InverseGaussian } |
| GLM family of error distributions. More... | |
| enum class | nk::stats::GlmLink { GlmLink::Identity , GlmLink::Logit , GlmLink::Log , GlmLink::Reciprocal , GlmLink::Probit } |
| GLM link function. More... | |
Functions | |
| std::tuple< Value, Value, Value, Value > | nk::stats::regress (const Value &y, const Value &X, double alpha, std::pmr::memory_resource *mr=nullptr) |
| Ordinary least-squares regression ([b, bint, r, stats] = regress(y, X, alpha)). | |
| Value | nk::stats::ridge (const Value &y, const Value &X, const Value &k, bool scaled, std::pmr::memory_resource *mr=nullptr) |
| Ridge regression (B = ridge(y, X, k, scaled)). | |
| std::tuple< Value, Value, Value, Value > | nk::stats::lscov (const Value &A, const Value &b, const Value &w, std::pmr::memory_resource *mr=nullptr) |
| Weighted least squares ([x, stdx, mse, S] = lscov(A, b, w)). | |
| NlinfitResult | nk::stats::nlinfit (const Value &X, const Value &y, FnHandle model, const Value &beta0, std::pmr::memory_resource *mr=nullptr) |
| Nonlinear least-squares fit via Levenberg-Marquardt. | |
| Value | nk::stats::nlparci (const Value &beta, const Value &R, const Value &J, double alpha=0.05, std::pmr::memory_resource *mr=nullptr) |
| Parameter confidence intervals from an nlinfit fit (ci = nlparci(beta, R, J [, alpha])). | |
| std::tuple< Value, Value > | nk::stats::nlpredci (FnHandle model, const Value &X, const Value &beta, const Value &R, const Value &J, double alpha, std::pmr::memory_resource *mr=nullptr) |
| Prediction confidence intervals from an nlinfit fit ([ypred, delta] = nlpredci(fun, X, beta, R, J [, alpha])). | |
| RobustfitResult | nk::stats::robustfit (const Value &X, const Value &y, RobustWeight weight=RobustWeight::Bisquare, double tune=std::numeric_limits< double >::quiet_NaN(), std::pmr::memory_resource *mr=nullptr) |
| Robust linear regression via Iteratively Reweighted Least Squares (IRLS) (robustfit(X, y)). | |
| RobustcovResult | nk::stats::robustcov (const Value &X, std::pmr::memory_resource *mr=nullptr) |
| Robust multivariate covariance estimate via trimmed-MCD ([sigma, mu] = robustcov(X)). | |
| GlmfitResult | nk::stats::glmfit (const Value &X, const Value &y, GlmDistribution distr, GlmLink link=GlmLink::Identity, std::pmr::memory_resource *mr=nullptr) |
| Fit a generalised linear model ([b, dev] = glmfit(X, y, distr [, link])). | |
| Value | nk::stats::glmval (const Value &b, const Value &X, GlmLink link, std::pmr::memory_resource *mr=nullptr) |
| Evaluate a fitted GLM (yhat = glmval(b, X, link)). | |
| LassoResult | nk::stats::lasso (const Value &X, const Value &y, const Value &lambdas, double alpha=1.0, std::pmr::memory_resource *mr=nullptr) |
| LASSO / elastic-net linear regression ([B, FitInfo] = lasso(X, y, lambdas, alpha)). | |
| LassoResult | nk::stats::lassoglm (const Value &X, const Value &y, GlmDistribution distr, const Value &lambdas, double alpha=1.0, std::pmr::memory_resource *mr=nullptr) |
| Lasso-regularised GLM ([B, FitInfo] = lassoglm(X, y, distr, lambdas, alpha)). | |