Changeset 7760:8f52f1b64337 in orange


Ignore:
Timestamp:
03/17/11 11:42:55 (3 years ago)
Author:
lanz <lan.zagar@…>
Branch:
default
Convert:
3f72c9808af89dfaefcf9dc7e610fc210c12622e
Message:

Replaced function printLinearRegression with method str.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • orange/Orange/regression/linear.py

    r7748 r7760  
    165165            return Orange.statistics.distribution.Continuous({1.0: yhat}) 
    166166        return (yhat, Orange.statistics.distribution.Continuous({1.0: yhat})) 
    167  
    168  
    169 def printLinearRegression(lr): 
    170     """pretty-prints linear regression model""" 
    171     beta = lr.beta 
    172     err = lr.statistics['model']['stdErrorEstimation'] 
    173     t = lr.statistics['model summary']['t'] 
    174     sig = lr.statistics['model summary']['sig']  
    175     beta0 = lr.beta0 
    176167     
    177     labels = ('Variable', 'Coeff Est', 'Std Error', 't-value', 'p') 
    178     print join(['%10s' % l for l in labels], ' ') 
    179  
    180     fmt = "%10s " + join(["%10.3f"] * 4, " ") 
    181     if beta0 == True: 
    182         print fmt % ('Constant', beta[0], err[0], t[0], sig[0]) 
    183         for i in range(len(lr.domain.attributes) - 1): 
    184             print fmt % (lr.domain.attributes[i].name, 
    185                          beta[i + 1], err[i + 1], t[i + 1], sig[i + 1]) 
    186     else: 
    187         for i in range(len(lr.domain.attributes) - 1): 
    188             print fmt % (lr.domain.attributes[i].name, 
    189                          beta[i], err[i], t[i], sig[i])        
     168    def __str__(self): 
     169        err = self.statistics['model']['stdErrorEstimation'] 
     170        t = self.statistics['model summary']['t'] 
     171        sig = self.statistics['model summary']['sig'] 
     172         
     173        s = ' '.join(['%10s' % l for l in 
     174                      ('Variable', 'Coeff Est', 'Std Error', 't-value', 'p')]) 
     175 
     176        fmt = '\n%10s ' + ' '.join(["%10.3f"] * 4) 
     177        if self.beta0 == True: 
     178            s += fmt % ('Constant', self.beta[0], err[0], t[0], sig[0]) 
     179            for i in range(len(self.domain.attributes) - 1): 
     180                s +=  fmt % (self.domain.attributes[i].name, 
     181                             self.beta[i + 1], err[i + 1], t[i + 1], sig[i + 1]) 
     182        else: 
     183            for i in range(len(self.domain.attributes) - 1): 
     184                s +=  fmt % (self.domain.attributes[i].name, 
     185                             self.beta[i], err[i], t[i], sig[i]) 
     186        return s 
    190187 
    191188def get_sig(m1, m2, n): 
Note: See TracChangeset for help on using the changeset viewer.