Statistics::Descriptive::Smoother::Weightedexponential (3)
Leading comments
Automatically generated by Pod::Man 2.28 (Pod::Simple 3.29) Standard preamble: ========================================================================
NAME
Statistics::Descriptive::Smoother::Weigthedexponential - Implement weighted exponential smoothingSYNOPSIS
use Statistics::Descriptive::Smoother; my $smoother = Statistics::Descriptive::Smoother->instantiate({ method => 'weightedexponential', coeff => 0.5, data => [1, 2, 3, 4, 5], samples => [110, 120, 130, 140, 150], }); my @smoothed_data = $smoother->get_smoothed_data();
DESCRIPTION
This module implement the weighted exponential smoothing algorithm to smooth the trend of a series of statistical data.This algorithm can help to control large swings in the unsmoothed data that arise from small samples for those data points.
The algorithm implements the following formula:
W(0) = N(0)
W(t) = ( W(t-1) * CoeffA + N(t) * CoeffB ) / (CoeffA + CoeffB)
CoeffA = C * ( W(t-1) / (W(t-1) + N(t) ) )
CoeffB = (1 - C) * ( N(t) * (W(t-1) + N(t)) )
S(t) = (S(t-1)*CoeffA + X(t)*CoeffB) / (CoeffA + CoeffB)
where:
- *
- t = index in the series
- *
- S(t) = smoothed series value at position t
- *
- C = smoothing coefficient. Value in the [0;1] range. 0 means that the series is not smoothed at all, while 1 the series is universally equal to the initial unsmoothed value.
- *
- X(t) = unsmoothed series value at position t
METHODS
- $stats->get_smoothed_data();
- Returns a copy of the smoothed data array.
AUTHOR
Fabio PonciroliCOPYRIGHT
Copyright(c) 2012 by Fabio Ponciroli.LICENSE
This file is licensed under thePermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ``Software''), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.