mykolavuy/forecast

PHP library for linear, power, and logarithmic regression forecasting.

Installs: 0

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/mykolavuy/forecast

v0.3.0 2025-06-05 18:38 UTC

This package is auto-updated.

Last update: 2025-12-05 20:44:56 UTC


README

PHP Version MIT License GitHub Repo

A simple and extensible library for forecasting missing data points using different regression models: Linear, Power, Logarithmic, and Exponential. Designed for PHP 8.1+.

โœจ Features

  • ๐Ÿ“Š Supports Linear, Power, Logarithmic, and Exponential regression.
  • ๐Ÿ” Optional interpolation-only mode to avoid extrapolation.
  • ๐Ÿงฉ Pluggable architecture via RegressionInterface.
  • โšก๏ธ Fast, simple, and stateless static prediction:
    ForecastService::predict($data, $method)
  • โœ… Thoroughly unit-tested.

๐Ÿ“‚ Source Code

The complete source code is available on GitHub.

๐Ÿ›  Installation

    composer require mykolavuy/forecast-regressions

๐Ÿš€ Usage

use MykolaVuy\Forecast\ForecastService;

$data = [
    1 => 10,
    2 => null,
    3 => 30,
    4 => null,
    5 => 50,
    6 => null,
];

$service = new ForecastService();

// Linear regression forecast
$result = $service->forecast($data, method: 'linear');

// Power regression with interpolation only
$interpolated = $service->forecast($data, method: 'power', interpolateOnly: true);

// ๐Ÿ”น Static call (no instance needed)
$static = ForecastService::predict($data, method: 'exponential');

๐Ÿ”ง Regression Methods

Method Formula Description
linear y = a * x + b Straight-line fitting
power y = a * x^b Exponential-style growth/decay
logarithmic y = a + b * log(x) Logarithmic trend modeling
exponential y = a * e^(b * x) Classic exponential regression

โœ… Requirements

  • PHP 8.1 or higher
  • Composer

๐Ÿงช Running Tests

    ./vendor/bin/phpunit

Test files are located in the tests/ directory.

๐Ÿ“„ License

This project is licensed under the MIT License.

๐ŸŒ Projects by the Author

intester.com

InTester is a secure and transparent online knowledge assessment platform. It offers time-limited tests, anti-cheating measures, instant results with PDF certificates, and public test records โ€” making it ideal for job seekers and recruiters alike.

dctsign.com

DCT Sign is a blockchain-backed electronic signature platform that prioritizes privacy and data integrity. Users can securely sign documents without storing the original files, ensuring confidentiality and compliance with advanced e-signature standards.

Thank you for using ForecastRegressions! Contributions and feedback are welcome.