Ignore:
Timestamp:
03/12/13 17:05:00 (14 months ago)
Author:
Ales Erjavec <ales.erjavec@…>
Branch:
default
Message:

Fixed mixed tab/space indentation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • Orange/classification/logreg.py

    r11397 r11398  
    921921##  PROBABILITY CALCULATIONS 
    922922 
    923 def lchisqprob(chisq,df): 
     923def lchisqprob(chisq, df): 
    924924    """ 
    925925    Return the (1-tailed) probability value associated with the provided 
     
    927927    """ 
    928928    BIG = 20.0 
     929 
    929930    def ex(x): 
    930         BIG = 20.0 
    931         if x < -BIG: 
    932             return 0.0 
    933         else: 
    934             return math.exp(x) 
    935     if chisq <=0 or df < 1: 
    936         return 1.0 
     931        BIG = 20.0 
     932        if x < -BIG: 
     933            return 0.0 
     934        else: 
     935            return math.exp(x) 
     936    if chisq <= 0 or df < 1: 
     937        return 1.0 
    937938    a = 0.5 * chisq 
    938     if df%2 == 0: 
    939         even = 1 
     939    if df % 2 == 0: 
     940        even = 1 
    940941    else: 
    941         even = 0 
     942        even = 0 
    942943    if df > 1: 
    943         y = ex(-a) 
     944        y = ex(-a) 
    944945    if even: 
    945         s = y 
     946        s = y 
    946947    else: 
    947948        s = 2.0 * zprob(-math.sqrt(chisq)) 
     
    954955        if a > BIG: 
    955956            if even: 
    956                 e = 0.0 
     957                e = 0.0 
    957958            else: 
    958                 e = math.log(math.sqrt(math.pi)) 
     959                e = math.log(math.sqrt(math.pi)) 
    959960            c = math.log(a) 
    960961            while (z <= chisq): 
    961                 e = math.log(z) + e 
    962                 s = s + ex(c*z-a-e) 
    963                 z = z + 1.0 
     962                e = math.log(z) + e 
     963                s = s + ex(c * z - a - e) 
     964                z = z + 1.0 
    964965            return s 
    965966        else: 
     
    970971            c = 0.0 
    971972            while (z <= chisq): 
    972                 e = e * (a/float(z)) 
     973                e = e * (a / float(z)) 
    973974                c = c + e 
    974975                z = z + 1.0 
    975             return (c*y+s) 
     976            return (c * y + s) 
    976977    else: 
    977978        return s 
     
    981982    """ 
    982983    Returns the area under the normal curve 'to the left of' the given z value. 
    983     Thus::  
     984    Thus:: 
    984985 
    985986    for z<0, zprob(z) = 1-tail probability 
     
    991992    Z_MAX = 6.0    # maximum meaningful z-value 
    992993    if z == 0.0: 
    993     x = 0.0 
     994        x = 0.0 
    994995    else: 
    995     y = 0.5 * math.fabs(z) 
    996     if y >= (Z_MAX*0.5): 
    997         x = 1.0 
    998     elif (y < 1.0): 
    999         w = y*y 
    1000         x = ((((((((0.000124818987 * w 
    1001             -0.001075204047) * w +0.005198775019) * w 
    1002               -0.019198292004) * w +0.059054035642) * w 
    1003             -0.151968751364) * w +0.319152932694) * w 
    1004           -0.531923007300) * w +0.797884560593) * y * 2.0 
    1005     else: 
    1006         y = y - 2.0 
    1007         x = (((((((((((((-0.000045255659 * y 
    1008                  +0.000152529290) * y -0.000019538132) * y 
    1009                -0.000676904986) * y +0.001390604284) * y 
    1010              -0.000794620820) * y -0.002034254874) * y 
    1011                +0.006549791214) * y -0.010557625006) * y 
    1012              +0.011630447319) * y -0.009279453341) * y 
    1013            +0.005353579108) * y -0.002141268741) * y 
    1014          +0.000535310849) * y +0.999936657524 
     996        y = 0.5 * math.fabs(z) 
     997    if y >= (Z_MAX * 0.5): 
     998        x = 1.0 
     999    elif (y < 1.0): 
     1000        w = y * y 
     1001        x = ((((((((0.000124818987 * w 
     1002            - 0.001075204047) * w + 0.005198775019) * w 
     1003              - 0.019198292004) * w + 0.059054035642) * w 
     1004            - 0.151968751364) * w + 0.319152932694) * w 
     1005          - 0.531923007300) * w + 0.797884560593) * y * 2.0 
     1006    else: 
     1007        y = y - 2.0 
     1008        x = (((((((((((((-0.000045255659 * y 
     1009                 + 0.000152529290) * y - 0.000019538132) * y 
     1010               - 0.000676904986) * y + 0.001390604284) * y 
     1011             - 0.000794620820) * y - 0.002034254874) * y 
     1012               + 0.006549791214) * y - 0.010557625006) * y 
     1013             + 0.011630447319) * y - 0.009279453341) * y 
     1014           + 0.005353579108) * y - 0.002141268741) * y 
     1015         + 0.000535310849) * y + 0.999936657524 
    10151016    if z > 0.0: 
    1016     prob = ((x+1.0)*0.5) 
     1017        prob = ((x + 1.0) * 0.5) 
    10171018    else: 
    1018     prob = ((1.0-x)*0.5) 
     1019        prob = ((1.0 - x) * 0.5) 
    10191020    return prob 
    10201021 
Note: See TracChangeset for help on using the changeset viewer.