rwlogo
SourcePro C++ 12.0

SourcePro® C++ API Reference Guide



   SourcePro C++
Documentation Home

RWLogisticFitAnalysis Class Reference
[Parameter Calculation]

Calculates a number of goodness of fit quantities for a given RWLogisticRegression instance. More...

#include <rw/analytics/logfit.h>

List of all members.

Public Member Functions

 RWLogisticFitAnalysis ()
 RWLogisticFitAnalysis (const RWLogisticFitAnalysis &rhs)
 RWLogisticFitAnalysis (const RWLogisticRegression &reg)
 ~RWLogisticFitAnalysis ()
void setLogisticRegression (const RWLogisticRegression &lr)
int residualDegreesOfFreedom () const
int regressionDegreesOfFreedom () const
double logLikelihood () const
double deviance () const
double GStatistic () const
double GStatisticPValue () const
double GStatisticCriticalValue (double alpha=.05) const
int GStatisticDegreesOfFreedom () const
double PearsonStatistic () const
double PearsonStatisticPValue () const
double PearsonStatisticCriticalValue (double alpha=.05) const
int PearsonStatisticDegreesOfFreedom () const
double HLStatistic () const
double HLStatisticPValue () const
double HLStatisticCriticalValue (double alpha=.05) const
int HLStatisticDegreesOfFreedom () const
const HistogramHLStatisticOutputHistogram () const
const HistogramHLStatisticPosObsHistogram () const
void setPredictorDataGroups (const RWMathVec< size_t > &groups)
const RWMathVec< size_t > predictorDataGroups () const
void setModelOutputGroups (size_t ngroups)
size_t modelOutputGroups () const
RWLogisticFitAnalysisoperator= (const RWLogisticFitAnalysis &rhs)

Detailed Description

Given RWLogisticRegression instance, class RWLogisticFitAnalysis calculates several goodness of fit quantities, including the G-statistic, Pearson statistic, and Hosmer and Lemeshow statistic along with their P-values and critical values. These statistics are described in the Business Analysis Module User's Guide.

Synopsis

 #include <rw/stats/logregress.h>
 #include <rw/stats/logfit.h>
 RWLogisticRegression lr;
 RWLogisticFitAnalysis logfit(lr);

Examples

 #include <rw/analytics/logregress.h>
 #include <rw/analytics/logfit.h>
 #include <iostream>

 int main()
 {
   RWGenMat<double> predData = "5x2 [1 234 2 431 3
                                    333 4 654 5 788]";
   RWMathVec<bool> obsData(5, rwUninitialized );
   obsData[0] = obsData[3] = obsData[4] = true;
   obsData[1] = obsData[2] = false;

   // Create a logistic regression object.
   RWLogisticRegression model(predData, obsData);

   // Analyze the model; print out some summaries of the model's
   // goodness of fit.
   RWLogisticFitAnalysis logfit(model);

   std::cout << "Pearson statistic: " << logfit.PearsonStatistic()
             << std::endl;
   std::cout << "Pearson statistic P-value: "
             << logfit.PearsonStatisticPValue() << std::endl;
   std::cout << "Pearson statistic 10% critical value: "
             << logfit.PearsonStatisticCriticalValue(0.10) << std::endl;
   std::cout << "Pearson statistic degrees of freedom: "
             << logfit.PearsonStatisticDegreesOfFreedom() << std::endl;
   std::cout << "Predictor data groups for Pearson statistic: "
             << logfit.predictorDataGroups() << std::endl;
   std::cout << std::endl;

   std::cout << "HL statistic: " << logfit.HLStatistic() << std::endl;
   std::cout << "HL statistic P-value: " << logfit.HLStatisticPValue()
             << std::endl;
   std::cout << "HL statistic 10% critical value: "
             << logfit.HLStatisticCriticalValue(0.10) << std::endl;
   std::cout << "HL statistic degrees of freedom: "
             << logfit.HLStatisticDegreesOfFreedom() << std::endl;
   std::cout << "Bin counts for predictions: "
             << logfit.HLStatisticOutputHistogram() << std::endl;
   std::cout << "Bin counts for predictions associated\n"
             << "with positive observations: "
             << logfit.HLStatisticPosObsHistogram() << std::endl;
   std::cout << std::std::endl;

   return 0;
 }

Constructor & Destructor Documentation

RWLogisticFitAnalysis::RWLogisticFitAnalysis (  ) 

Constructs an empty logistic regression fit analysis object. Behavior is undefined.

RWLogisticFitAnalysis::RWLogisticFitAnalysis ( const RWLogisticFitAnalysis rhs  ) 

Constructs a copy of rhs.

RWLogisticFitAnalysis::RWLogisticFitAnalysis ( const RWLogisticRegression reg  ) 

Constructs an analysis object for the logistic regression object reg.

RWLogisticFitAnalysis::~RWLogisticFitAnalysis (  )  [inline]

Destructor.


Member Function Documentation

double RWLogisticFitAnalysis::deviance (  )  const [inline]

Returns the deviance from the saturated model.

double RWLogisticFitAnalysis::GStatistic (  )  const [inline]

Returns the G statistic value, described in the Business Analysis Module User's Guide, relative to the intercept only model.

double RWLogisticFitAnalysis::GStatisticCriticalValue ( double  alpha = .05  )  const [inline]

Returns the critical value for the G statistic at the specified significance level.

int RWLogisticFitAnalysis::GStatisticDegreesOfFreedom (  )  const [inline]

Returns the degrees of freedom for the G statistic test value.

double RWLogisticFitAnalysis::GStatisticPValue (  )  const [inline]

Returns the P-value for the G statistic according to a chi-square distribution.

double RWLogisticFitAnalysis::HLStatistic (  )  const [inline]

Returns the Hosmer-Lemeshow test statistic, described in the Business Analysis Module User's Guide.

double RWLogisticFitAnalysis::HLStatisticCriticalValue ( double  alpha = .05  )  const [inline]

Returns the critical value for the Hosmer-Lemeshow statistic according to a chi-square distribution.

int RWLogisticFitAnalysis::HLStatisticDegreesOfFreedom (  )  const [inline]

Returns degrees of freedom for the Hosmer-Lemeshow statistic test value.

const Histogram& RWLogisticFitAnalysis::HLStatisticOutputHistogram (  )  const [inline]

Returns the histogram of model predictions used in computing the Hosmer-Lemeshow statistic. This can be used to verify the exact bin boundaries, which can be critical to the statistic's value.

const Histogram& RWLogisticFitAnalysis::HLStatisticPosObsHistogram (  )  const [inline]

Returns the histogram of model predictions whose corresponding observation value is positive. Seeing this histogram can be very useful for understanding the value for the statistic.

double RWLogisticFitAnalysis::HLStatisticPValue (  )  const [inline]

Returns the P-value for the Hosmer-Lemeshow statistic according to a chi-square distribution.

double RWLogisticFitAnalysis::logLikelihood (  )  const [inline]

Returns log likelihood of the logistic regression model.

size_t RWLogisticFitAnalysis::modelOutputGroups (  )  const [inline]

Returns the number of groups used for computing the Hosmer-Lemeshow statistic.

RWLogisticFitAnalysis& RWLogisticFitAnalysis::operator= ( const RWLogisticFitAnalysis rhs  ) 

Sets self equal to rhs.

double RWLogisticFitAnalysis::PearsonStatistic (  )  const [inline]

Returns the Pearson test statistic. See the Business Analysis Module User's Guide for more information.

double RWLogisticFitAnalysis::PearsonStatisticCriticalValue ( double  alpha = .05  )  const [inline]

Returns the critical value for the Pearson statistic according to a chi-square distribution.

int RWLogisticFitAnalysis::PearsonStatisticDegreesOfFreedom (  )  const [inline]

Returns degrees of freedom for the Pearson statistic test value.

double RWLogisticFitAnalysis::PearsonStatisticPValue (  )  const [inline]

Returns the P-value for the Pearson statistic according to a chi-square distribution.

const RWMathVec<size_t> RWLogisticFitAnalysis::predictorDataGroups (  )  const [inline]

Returns the grouping used for the predictor matrix during computation of a Pearson statistic.

int RWLogisticFitAnalysis::regressionDegreesOfFreedom (  )  const [inline]

Returns the regression degrees of freedom for a regression model. This is defined as the number of predictor variables in the model.

int RWLogisticFitAnalysis::residualDegreesOfFreedom (  )  const [inline]

Returns the residual degrees of freedom for a regression model. This is defined as the number of predictor patterns minus the number of parameters in the regression model.

void RWLogisticFitAnalysis::setLogisticRegression ( const RWLogisticRegression lr  ) 

Specifies which regression model will be used for the fit analysis.

void RWLogisticFitAnalysis::setModelOutputGroups ( size_t  ngroups  ) 

Sets the grouping that should be used for the model's predicted values when computing a Hosmer-Lemeshow statistic. The model's predicted values are organized into a number of equal-mass bins; the number of bins is equal to ngroups.

void RWLogisticFitAnalysis::setPredictorDataGroups ( const RWMathVec< size_t > &  groups  ) 

Sets the grouping that should be used for the predictor matrix when computing a Pearson statistic. The length of groups should equal the number of predictor variables in the model. The element groups[k] specifies the number of equally-spaced groups to be used for predictor variable k's data. Each element of groups must have a positive (nonzero) value.

 All Classes Functions Variables Typedefs Enumerations Enumerator Friends

© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.