# FreeBSD Manual Pages

```Statistics::Basic::CovUsernContributed Perl DoStatistics::Basic::Covariance(3)

NAME
Statistics::Basic::Covariance - find the	covariance between two lists

SYNOPSIS
Invoke it this way:

my \$covariance = covariance(	[1,2,3], [1,2,3] );

Or this way:

my \$v1  = vector(1,2,3);
my \$v2  = vector(1,2,3);
my \$cov = cov(\$v1,\$v2);

And then	either query the values	or print them like so:

print "The covariance between \$v1 and \$v2: \$covariance\n";
my \$cq = \$cov->query;
my \$c0 = 0+\$cov;

Create a	20 point "moving" covariance like so:

use Statistics::Basic qw(:all nofill);

my \$sth = \$dbh->prepare("select col1,col2 from data where something");
my \$len = 20;
my \$cov = cov();
\$cov->set_size(\$len);

\$sth->execute or die	\$dbh->errstr;
\$sth->bind_columns( my (\$lhs, \$rhs) ) or die	\$dbh->errstr;

my \$count = \$len;
while( \$sth->fetch )	{
\$cov->insert( \$lhs, \$rhs	);
if( defined( my \$c = \$cov->query	) ) {
print "Covariance: \$c\n";
}

# This would also work:
# print "Covariance: \$cov\n" if \$cov->query_filled;
}

METHODS
This list of methods skips the methods inherited	from
Statistics::Basic::_TwoVectorBase (things like query(), insert(), and
ginsert()).

new()
Create a new	Statistics::Basic::Covariance object.  This function
takes two arguments -- which	can either be arrayrefs	or
Statistics::Basic::Vector objects.  This function is	called when
the covariance() shortcut-function is called.

query_vector1()
Return the Statistics::Basic::Vector	for the	first vector.

query_vector2()
Return the Statistics::Basic::Vector	object for the second vector.

query_mean1()
Returns the Statistics::Basic::Mean object for the first vector.

query_mean2()
Returns the Statistics::Basic::Mean object for the second vector.

This object is overloaded.  It tries to return an appropriate string
for the calculation or the value	of the computation in numeric context.

In boolean context, this	object is always true (even when empty).

AUTHOR
Paul Miller "<jettero@cpan.org>"