def simpleRunDT(self, train_ratio = 0.75, function = 1): # split train data and test data train_data, test_data, train_data_label, test_data_label = self.randomSplit(train_ratio, self.data, self.data_label) # train dt = tree.DT() if function == 0: dt.train(data = train_data, data_label = train_data_label, fun = dt.infoGain) else: dt.train(data = train_data, data_label = train_data_label, fun = dt.giniIndex) # test predictions = dt.test(test_data) accuracy = sum([1 for label, pred in zip(test_data_label, predictions) if label == pred]) / len(predictions) print("accuracy is: %f" %(accuracy)) return accuracy