Changeset 75


Ignore:
Timestamp:
May 4, 2004, 11:51:58 AM (19 years ago)
Author:
Peter
Message:

fixed bug in get_p_approx

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/ROC.cc

    r72 r75  
    4141        area+=i;
    4242    // Normalizing the area to 0-1
    43     area = (2*area/nof_pos_ - nof_pos_ + 1)/(2*value_.size() - 2*nof_pos_);
     43    area = (area/nof_pos_ - (nof_pos_ - 1)/2 )/(value_.size() - nof_pos_);
     44
    4445    return area;
    4546  }
     
    5152    if (nof_pos_ < minimum_size_ & value_.size()-nof_pos_ < minimum_size_)
    5253      p = get_p_exact(area*nof_pos_*(value_.size()-nof_pos_),
    53                            nof_pos_, value_.size()-nof_pos_);
     54                          nof_pos_, value_.size()-nof_pos_);
    5455    else
    5556    p = get_p_approx(area);
     
    6061  double ROC::get_p_approx(const double area)
    6162  {
    62     double x = area-0.5;
    63     double sigma = ((value_.size()-nof_pos_)*nof_pos_*value_.size()/12/
    64                     (2*value_.size() - 2*nof_pos_));
     63    double x = area - 0.5;
     64    double sigma = (pow((value_.size()-nof_pos_)* nof_pos_ *
     65                        (value_.size()+1)/12, 0.5) /
     66                    (value_.size() - nof_pos_ ) / nof_pos_);
    6567    double p = gsl_cdf_gaussian_Q(x, sigma);
     68       
    6669    return p;
    6770  }
Note: See TracChangeset for help on using the changeset viewer.