def train(self): print(path) if self.path == 'data/bank-additional-full.csv': data = pd.read_csv('data/bank-additional-full.csv', sep=';') data['y'] = data['y'].map({'yes': 1, 'no': 0}) else: data = pd.read_csv('path') process = Preprocessor(data) data, columns = process._divide_data(data, self.label) categorical, numerical = process._classify_data(columns, data) transformed, y = process._preprocess_data(categorical, numerical, preprocessor=scaler) #dealing with our imbalanced data by oversampling the data set model = Modelling() x_train, x_test, y_train, y_test = model._splitdata(transformed, y, size=self.validate) X, y = DealwithSample(x_train, y_train, method=sampler) model = model.Prediction(X, x_test, y, y_test, method=self.model)