def test_experiment(self): output_filename_header = FileLoader.create_output_file() time.sleep(1) loaded_algorithm_combinations = FileLoader.read_csv_file("../Datasets/test.csv") file_path = "../Datasets/HIV_37_Samples/MergedDataset.csv" loaded_data = FileLoader.load_file(file_path) # feature_eliminator = SelectKBest(f_regression,k=k_value) print (loaded_algorithm_combinations[0]) output_filename = FileLoader.create_output_file() for i in range(0, 80): normalizer = self.getnormalizer(loaded_algorithm_combinations[i][0]) feature_eliminator = self.getfeature_eliminator(loaded_algorithm_combinations[i][1]) the_model = self.get_model(loaded_algorithm_combinations[i][2]) print "taking ", type(normalizer).__name__, "and feature selector ", type( feature_eliminator ).__name__, "model", type(the_model).__name__ FileLoader.write_model_in_file( output_filename_header, type(normalizer).__name__, type(feature_eliminator).__name__, type(the_model).__name__, "", "", "", "", "", ) the_data_manager = DataManager(feature_eliminator, normalizer=normalizer) the_data_manager.set_data(loaded_data) the_data_manager.split_data(test_split=0.15, train_split=0.70) exp = Experiment(the_data_manager, the_model) exp.run_experiment() # arr_selected = feature_eliminator.get_support(indices=True) # if(exp.get_r2(SplitTypes.Train) > 0 and exp.get_r2(SplitTypes.Valid) > 0 and exp.get_r2(SplitTypes.Test) > 0): FileLoader.write_model_in_file( output_filename, type(normalizer).__name__, type(feature_eliminator).__name__, type(the_model).__name__, "", exp.fitness_matrix[0], exp.get_r2(SplitTypes.Train), exp.get_r2(SplitTypes.Valid), exp.get_r2(SplitTypes.Test), )
linear_model.BayesianRidge() # ,svm.SVR() # ,RandomForestRegressor() # , LinearRegression() ] normalizers = [ None # , StandardScaler() # ,NumpyNormalizer(), ScikitNormalizer() # , MinMaxScaler() ,Binarizer() # ,Imputer(), KernelCenterer() # ,Normalizer() ] output_filename = FileLoader.create_output_file() for normalizer in normalizers: for feature_eliminator in feature_eliminators: # for k_value in range(5, 20): # for k_value in range(13, 14): for the_model in the_models: print( "taking care of ", type(normalizer).__name__, "and feature selector ", type(feature_eliminator).__name__, "model", type(the_model).__name__, )