Scroll to navigation

Average(3pm) LogReport's Lire Documentation Average(3pm)

NAME

Lire::Average - Lire class that implements the avg operator

SYNOPSIS

 use Lire::Average

DESCRIPTION

Class that implements the avg operator. This operator will compute the average value of a DLF field in a group of DLF records.
If the field used by average isn't a numeric fields, the number of different values in that field will be used as the numerator.
It's possible to compute a weighted average by specifying a weighting field.
By default, the average is a by record average. It's possible to compute a by different values average. The list of fields that's used to determine the different values if speficied in the by-fields attribute.

METHODS

new( %params )

Creates a new Lire::Average object. In addition to the values supported by its parents, the by-fields and weight attributes will be initialized to the values specified in the %params argument.

by_fields( [$new_by_fields] )

Returns the fields that are going to be used to count the different values which will made up the by part of the average.
This a reference to an array of DLF field names.
If the $new_by_fields parameter is set, it will be used as the new $by_fields value. It must be an array reference and should only contains valid field names for the current report specification's schema.

weigth( [$new_weight] )

Returns the DLF field's name by which the values will be multiplied before being summed.
You can change the weight field by specifying a new name as the $new_weight parameter. Use undef to remove the use of a weighting field.

SEE ALSO

 Lire::ReportSpec(3pm), Lire::ReportOperator(3pm),
 Lire::Aggregator(3pm), Lire::Aggregate(3pm).

AUTHORS

 Francis J. Lacoste <flacoste@logreport.org>
 Wolfgang Sourdeau <wsourdea@logreport.org>

VERSION

$Id: Average.pm,v 1.17 2008/03/09 19:27:30 vanbaal Exp $

COPYRIGHT

Copyright (C) 2001-2004 Stichting LogReport Foundation LogReport@LogReport.org
This file is part of Lire.
Lire is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program (see COPYING); if not, check with http://www.gnu.org/copyleft/gpl.html.
2008-03-09 Lire 2.1.1