def __init__( self, pred=rforest, _smoteit=True, _n=-1, _tuneit=False, dataName=None, reps=1, extent=0.5, fSelect=False, Prune=False, infoPrune=0.75): self.pred = pred self.extent = extent self.fSelect = fSelect self.Prune = Prune self.infoPrune = infoPrune self.dataName = dataName self.out, self.out_pred = [], [] self._smoteit = _smoteit self.train, self.test = self.categorize() self.reps = reps self._n = _n self.tunedParams = None if not _tuneit else tuner( self.pred, self.train[_n])
def __init__( self, pred=CART, _smoteit=True, _n=-1, _tuneit=False, dataName=None, reps=1, extent=0.5, fSelect=False, Prune=False, infoPrune=0.75): self.pred = pred self.extent = extent self.fSelect = fSelect self.Prune = Prune self.infoPrune = infoPrune self.dataName = dataName self.out, self.out_pred = [], [] self._smoteit = _smoteit self.train, self.test = self.categorize() self.reps = reps self._n = _n self.tunedParams = None if not _tuneit else tuner( self.pred, self.train[_n])
def __init__( self, pred=rforest, _smoteit=True, _n=-1 , _tuneit=False, dataName=None, reps=1): self.pred = pred self.dataName = dataName self.out, self.out_pred = [self.dataName], [] self._smoteit = _smoteit self.train, self.test = self.categorize() self.reps = reps self._n = _n self.tunedParams = None if not _tuneit \ else tuner(self.pred, self.train[_n]) self.headers = createTbl(self.train[self._n], isBin=False , bugThres=1).headers
def __init__(self, file='ant', tuned=True): self.file = file self.train = createTbl(data(dataName=self.file).train[-1], isBin=True) self.test = createTbl(data(dataName=self.file).test[-1], isBin=True) self.param = dEvol.tuner(rforest, data(dataName=self.file).train[-1]) if \ tuned else None
def __init__(self, file='ant'): self.file = file self.train = createTbl(data(dataName=self.file).train[-1], isBin=False) self.test = createTbl(data(dataName=self.file).test[-1], isBin=False) self.param = tuner(rforest, data(dataName=self.file).train[-1])
def main(): dir = '../Data' from os import walk dataName = [Name for _, Name, __ in walk(dir)][0] numData = len(dataName) # Number of data Prd = [CART] # , rforest] # , adaboost, logit, knn] _smoteit = [True] # , False] _tuneit = [False] cd = {} abcd = [] res = {} for n in xrange(numData): out11 = [] outA1 = [] out1 = [] outFar = [] outNear = [] outa = [] one, two = explore(dir) data = [one[i] + two[i] for i in xrange(len(one))] print('##', dataName[n]) for p in Prd: train = [dat[0] for dat in withinClass(data[n])] test = [dat[1] for dat in withinClass(data[n])] reps = 10 abcd = [[], []] for t in _tuneit: tunedParams = None if not t else params print('### Tuning') if t else print('### No Tuning') for _smote in _smoteit: # for _n in xrange(0): _n = -1 # Training data for _ in xrange(reps): train_DF = createTbl(train[_n], isBin=True) # set_trace() # Testing data test_df = createTbl(test[_n], isBin=True) predRows = [] # Tune? actual = Bugs(test_df) before = p(train_DF, test_df, tunings=tunedParams, smoteit=True) tunedParams = None if not t else tuner(p, train[_n]) for predicted, row in zip(before, test_df._rows): tmp = row.cells tmp[-2] = predicted if predicted > 0: predRows.append(tmp) predTest = clone(test_df, rows=predRows) # Find and apply contrast sets # newTab = treatments(train = train[_n], # test = test[_n], # verbose = False, # smoteit = False).main() newTab_near = treatments2(train=train[_n], far=False, test=test[_n] # ).main() , test_df=predTest).main() \ if predRows \ else treatments2(train=train[_n], test=test[_n]).main() newTab_far = treatments2(train=train[_n], test=test[_n] # ).main() , test_df=predTest).main() \ if predRows \ else treatments2(train=train[_n], test=test[_n]).main() after_far = p(train_DF, newTab_far, tunings=tunedParams, smoteit=True) after_near = p(train_DF, newTab_near, tunings=tunedParams, smoteit=True) # print(showoff(dataName[n], before, after)) outa.append(_Abcd(before=actual, after=before)) # set_trace() cliffsFar = cliffsdelta(Bugs(predTest), after_far) cliffsNear = cliffsdelta(Bugs(predTest), after_near) # print(cliffsDelta(Bugs(predTest), after)) # print('Gain = %1.2f' % float(\ # (sum(Bugs(predTest)) - sum(after)) / sum(Bugs(predTest)) * 100), r'%') outFar.append(cliffsFar) outNear.append(cliffsNear) # out1.append(float((sum(before) - sum(after)) / sum(before) * 100)) # out1 = [o for o in out1 if np.isfinite(o)] outNear.insert(0, dataName[n] + '_Far') outFar.insert(0, dataName[n] + '_Near') outa.insert(0, dataName[n]) out11.extend([outNear, outFar]) outA1.append(outa) try: print('```') rdivDemo(out11, isLatex=False) # rdivDemo(outA1, isLatex = False) print('```') except IndexError: pass