A pure Julia implementation of LOESS (locally weighted regression) for smoothing scatterplots and fitting non-parametric models.
Loess.jl is a Julia package that implements LOESS (locally weighted regression), a non-parametric method for fitting smooth curves to scatterplot data. It provides tools for smoothing noisy data and visualizing trends without assuming a specific functional form. The package is based on the fast kd-tree approximation algorithm described in Cleveland's original papers.
Data scientists, statisticians, and researchers working in Julia who need to perform local regression analysis or smooth scatterplot data for visualization and modeling.
Loess.jl offers a pure Julia implementation with no external dependencies, providing performance and ease of use while staying faithful to the widely-used netlib LOESS algorithm. It integrates well with Julia's plotting ecosystem for seamless visualization.
Local regression, so smooooth!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Fully written in Julia with no external dependencies, ensuring seamless integration and performance within the Julia ecosystem, as highlighted in the README.
Based on Cleveland's original papers and netlib's implementation, providing an efficient approximation for locally weighted regression that is widely trusted in statistics.
Exports only two main functions, `loess` and `predict`, making it easy to train models and apply them to new data with minimal code, as shown in the synopsis.
The `span` keyword argument allows precise adjustment of the smoothing level, enabling users to tailor fits to specific data characteristics without complex tweaks.
The README explicitly states that multivariate regression is not yet fully implemented, limiting its utility for higher-dimensional statistical modeling.
As a pure Julia package, it is unsuitable for projects in other languages, restricting cross-platform use and forcing dependency on Julia's toolchain.
While efficient with kd-trees, the LOESS algorithm can be computationally intensive for very large datasets, and the package may lack optimizations for big data scenarios.