Isis Developer Reference
MultivariateStatistics.h
Go to the documentation of this file.
1
2#ifndef MultivariateStatistics_h
3#define MultivariateStatistics_h
9/* SPDX-License-Identifier: CC0-1.0 */
10#include "Constants.h"
11#include "PvlObject.h"
12#include "SpecialPixel.h"
13#include "Statistics.h"
14
15namespace Isis {
16
55 public:
57 MultivariateStatistics(const PvlObject &inStats);
59
60 void Reset();
61 void AddData(const double *x, const double *y,
62 const unsigned int count);
63 void AddData(double x, double y, unsigned int count = 1);
64 void RemoveData(const double *x, const double *y,
65 const unsigned int count);
66
67 Isis::Statistics X() const;
68 Isis::Statistics Y() const;
69 double SumXY() const;
70 double Covariance() const;
71 double Correlation() const;
72
73 void LinearRegression(double &a, double &b) const;
74
75 BigInt ValidPixels() const;
76 BigInt InvalidPixels() const;
77 BigInt TotalPixels() const;
78
79 PvlObject toPvl(QString name = "MultivariateStatistics") const;
80
81 private:
82
83 void fromPvl(const PvlObject &inStats);
84
89
91 double p_sumxy;
96 BigInt p_validPixels;
101 BigInt p_invalidPixels;
106 BigInt p_totalPixels;
107 };
108};
109
110#endif
Container of multivariate statistics.
Definition MultivariateStatistics.h:54
void LinearRegression(double &a, double &b) const
Fits a line.
Definition MultivariateStatistics.cpp:222
void RemoveData(const double *x, const double *y, const unsigned int count)
Remove an array of doubles from the accumulators and counters.
Definition MultivariateStatistics.cpp:124
double Correlation() const
Computes and returns the coefficient of correlation (between -1.0 and 1.0) of the two data sets.
Definition MultivariateStatistics.cpp:171
Isis::Statistics Y() const
Returns a Stats object for all of the Y data fed through the AddData method.
Definition MultivariateStatistics.cpp:262
double Covariance() const
Computes and returns the covariance between the two data sets If there are no valid data (pixels) the...
Definition MultivariateStatistics.cpp:153
MultivariateStatistics()
Constructs a Multivariate Statistics object with accumulators and counters set to zero.
Definition MultivariateStatistics.cpp:25
PvlObject toPvl(QString name="MultivariateStatistics") const
Serializes a multivariate statistics object as a PvlObject.
Definition MultivariateStatistics.cpp:293
BigInt TotalPixels() const
Returns the total number of pixels processed.
Definition MultivariateStatistics.cpp:189
BigInt InvalidPixels() const
Returns the number of invalid pixels encountered.
Definition MultivariateStatistics.cpp:211
double SumXY() const
Returns the sum of x*y for all data given through the AddData method.
Definition MultivariateStatistics.cpp:242
~MultivariateStatistics()
Destructs a MultivariateStatistics object.
Definition MultivariateStatistics.cpp:54
BigInt ValidPixels() const
Returns the number of valid pixels processed.
Definition MultivariateStatistics.cpp:201
Isis::Statistics X() const
Returns a Stats object for all of the X data fed through the AddData method.
Definition MultivariateStatistics.cpp:252
void Reset()
Resets all accumulators to zero.
Definition MultivariateStatistics.cpp:42
void AddData(const double *x, const double *y, const unsigned int count)
Add two arrays of doubles to the accumulators and counters.
Definition MultivariateStatistics.cpp:66
Contains Pvl Groups and Pvl Objects.
Definition PvlObject.h:61
This class is used to accumulate statistics on double arrays.
Definition Statistics.h:94
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
long long int BigInt
Big int.
Definition Constants.h:49