{'become' : '6', 'p' : 1},
            {'become' : '7', 'p' : 1},
            {'become' : '8', 'p' : 1},
            {'become' : '9', 'p' : 1}
        ]
}
ge.startExpr = '<EXPR>'



trainingSet = {
        'header' : ['otsu', 'stdev', 'mean', 't', 'minOtsu'],
        'target' : 't',
        'data' : thresholdingData
    }
ge.trainingSet = trainingSet

ge.train()
ge.printAllPhenotype()

#good features should have correlation with the output (done),
#good features should not be correlated each other
bestPhenotype = ge.getBestPhenotype(5, 0)
for phenotype in bestPhenotype:
    print(phenotype)
    
all_extracted_features = []
all_original_features = []
all_targets = []
trainingHeader = trainingSet['header']
for trainingData in trainingSet['data']: