USGS

Isis 3.0 Developer's Reference (API)

Home

Isis::MultivariateStatistics Class Reference
[Statistics]

Container of multivariate statistics. More...

#include <MultivariateStatistics.h>

List of all members.

Public Member Functions

 MultivariateStatistics ()
 Constructs a Multivariate Statistics object with accumulators and counters set to zero.
 ~MultivariateStatistics ()
 Destructs a MultivariateStatistics object.
void Reset ()
 Resets all accumulators to zero.
void AddData (const double *x, const double *y, const unsigned int count)
 Add two arrays of doubles to the accumulators and counters.
void AddData (double x, double y, unsigned int count=1)
 Add an x,y value to the accumulators and counters count times.
void RemoveData (const double *x, const double *y, const unsigned int count)
 Remove an array of doubles from the accumulators and counters.
Isis::Statistics X () const
 Returns a Stats object for all of the X data fed through the AddData method.
Isis::Statistics Y () const
 Returns a Stats object for all of the Y data fed through the AddData method.
double SumXY () const
 Returns the sum of x*y for all data given through the AddData method.
double Covariance () const
 Computes and returns the covariance between the two data sets If there are no valid data (pixels) then NULL8 is returned.
double Correlation () const
 Computes and returns the coefficient of correlation (between -1.0 and 1.0) of the two data sets.
void LinearRegression (double &a, double &b) const
 Fits a line

\[ y=A+Bx \]

through the data.

BigInt ValidPixels () const
 Returns the number of valid pixels processed.
BigInt InvalidPixels () const
 Returns the number of invalid pixels encountered.
BigInt TotalPixels () const
 Returns the total number of pixels processed.

Detailed Description

Container of multivariate statistics.

This class is used to accumulate multivariate statisics on two double arrays. In particular, it is highly useful for obtaining the covariance, correlation, and linear regression analysis on the the data. It ignores input values which are Isis special pixel values. That is, if either co-aligned double value is a special pixel then both values are not used in any statistical computation.

See also:
Histogram
Stats
Author:
2004-06-08 Jeff Anderson

Constructor & Destructor Documentation

Isis::MultivariateStatistics::MultivariateStatistics (  ) 

Constructs a Multivariate Statistics object with accumulators and counters set to zero.

Isis::MultivariateStatistics::~MultivariateStatistics (  ) 

Destructs a MultivariateStatistics object.


Member Function Documentation

void Isis::MultivariateStatistics::AddData ( double  x,
double  y,
unsigned int  count = 1 
)

Add an x,y value to the accumulators and counters count times.

This method can be invoked multiple times before obtaining statistics.

Parameters:
x x value to add
y y value to add
count Number of times to add this x,y value
void Isis::MultivariateStatistics::AddData ( const double *  x,
const double *  y,
const unsigned int  count 
)

Add two arrays of doubles to the accumulators and counters.

This method can be invoked multiple times, for example, once for each line in a cube, before obtaining statistics.

Parameters:
x Array of doubles to add.
y Array of doubles to add.
count Number of doubles to process.
double Isis::MultivariateStatistics::Correlation (  )  const

Computes and returns the coefficient of correlation (between -1.0 and 1.0) of the two data sets.

This can be used as a goodness-of-fit measurement. The close the correlation is two -1.0 or 1.0 the more likely the data sets are related (and therefore the regression equation is valid).

Returns:
The coefficient of correlation. (between -1.0 and 1.0) The closer to 0.0 implies there is less correlation between the data sets. Returns NULL8 if correlation couldn't be computed.

Referenced by Isis::OverlapStatistics::toPvl().

double Isis::MultivariateStatistics::Covariance (  )  const

Computes and returns the covariance between the two data sets If there are no valid data (pixels) then NULL8 is returned.

Returns:
Covariance between the two data sets.

Referenced by Isis::OverlapStatistics::toPvl().

BigInt Isis::MultivariateStatistics::InvalidPixels (  )  const

Returns the number of invalid pixels encountered.

Returns:
The number of invalid (unprocessed) pixels.

Referenced by Isis::OverlapStatistics::toPvl().

void Isis::MultivariateStatistics::LinearRegression ( double &  a,
double &  b 
) const

Fits a line

\[ y=A+Bx \]

through the data.

Parameters:
a The additive constant A.
b The additive constant B.

Referenced by Isis::OverlapStatistics::toPvl().

void Isis::MultivariateStatistics::RemoveData ( const double *  x,
const double *  y,
const unsigned int  count 
)

Remove an array of doubles from the accumulators and counters.

Parameters:
x Pointer to an array of doubles to remove.
y Array of doubles to add.
count Number of doubles to process.
Returns:
(type)return description
void Isis::MultivariateStatistics::Reset (  ) 

Resets all accumulators to zero.

double Isis::MultivariateStatistics::SumXY (  )  const

Returns the sum of x*y for all data given through the AddData method.

Returns:
The sum of x*y for all data.
BigInt Isis::MultivariateStatistics::TotalPixels (  )  const

Returns the total number of pixels processed.

Returns:
The total number of pixel processed (valid and invalid).

Referenced by Isis::OverlapStatistics::toPvl().

BigInt Isis::MultivariateStatistics::ValidPixels (  )  const

Returns the number of valid pixels processed.

Only valid pixels are utilized when computing the average, standard deviation, variance, minimum, and maximum.

Returns:
The number of valid pixels processed.

Referenced by Isis::Equalization::calculateStatistics(), Isis::OverlapStatistics::IsValid(), and Isis::OverlapStatistics::toPvl().

Isis::Statistics Isis::MultivariateStatistics::X (  )  const

Returns a Stats object for all of the X data fed through the AddData method.

Returns:
A Stats object for all X data.

Referenced by Isis::Equalization::calculateStatistics(), and Isis::OverlapStatistics::toPvl().

Isis::Statistics Isis::MultivariateStatistics::Y (  )  const

Returns a Stats object for all of the Y data fed through the AddData method.

Returns:
A Stats object for all Y data.

Referenced by Isis::Equalization::calculateStatistics(), and Isis::OverlapStatistics::toPvl().


The documentation for this class was generated from the following files: