Mercurial > repos > bgruening > sklearn_regression_metrics
annotate stacking_ensembles.py @ 18:50bc79ab2eae draft
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit 49522db5f2dc8a571af49e3f38e80c22571068f4
| author | bgruening | 
|---|---|
| date | Tue, 09 Jul 2019 19:18:00 -0400 | 
| parents | 25b74e5f42f4 | 
| children | 3cc8a461bc5d | 
| rev | line source | 
|---|---|
| 
17
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
1 import argparse | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
2 import json | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
3 import pandas as pd | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
4 import pickle | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
5 import xgboost | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
6 import warnings | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
7 from sklearn import (cluster, compose, decomposition, ensemble, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
8 feature_extraction, feature_selection, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
9 gaussian_process, kernel_approximation, metrics, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
10 model_selection, naive_bayes, neighbors, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
11 pipeline, preprocessing, svm, linear_model, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
12 tree, discriminant_analysis) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
13 from sklearn.model_selection._split import check_cv | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
14 from feature_selectors import (DyRFE, DyRFECV, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
15 MyPipeline, MyimbPipeline) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
16 from iraps_classifier import (IRAPSCore, IRAPSClassifier, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
17 BinarizeTargetClassifier, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
18 BinarizeTargetRegressor) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
19 from preprocessors import Z_RandomOverSampler | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
20 from utils import load_model, get_cv, get_estimator, get_search_params | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
21 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
22 from mlxtend.regressor import StackingCVRegressor, StackingRegressor | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
23 from mlxtend.classifier import StackingCVClassifier, StackingClassifier | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
24 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
25 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
26 warnings.filterwarnings('ignore') | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
27 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
28 N_JOBS = int(__import__('os').environ.get('GALAXY_SLOTS', 1)) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
29 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
30 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
31 def main(inputs_path, output_obj, base_paths=None, meta_path=None, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
32 outfile_params=None): | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
33 """ | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
34 Parameter | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
35 --------- | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
36 inputs_path : str | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
37 File path for Galaxy parameters | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
38 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
39 output_obj : str | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
40 File path for ensemble estimator ouput | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
41 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
42 base_paths : str | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
43 File path or paths concatenated by comma. | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
44 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
45 meta_path : str | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
46 File path | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
47 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
48 outfile_params : str | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
49 File path for params output | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
50 """ | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
51 with open(inputs_path, 'r') as param_handler: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
52 params = json.load(param_handler) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
53 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
54 base_estimators = [] | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
55 for idx, base_file in enumerate(base_paths.split(',')): | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
56 if base_file and base_file != 'None': | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
57 with open(base_file, 'rb') as handler: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
58 model = load_model(handler) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
59 else: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
60 estimator_json = (params['base_est_builder'][idx] | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
61 ['estimator_selector']) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
62 model = get_estimator(estimator_json) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
63 base_estimators.append(model) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
64 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
65 if meta_path: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
66 with open(meta_path, 'rb') as f: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
67 meta_estimator = load_model(f) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
68 else: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
69 estimator_json = params['meta_estimator']['estimator_selector'] | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
70 meta_estimator = get_estimator(estimator_json) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
71 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
72 options = params['algo_selection']['options'] | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
73 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
74 cv_selector = options.pop('cv_selector', None) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
75 if cv_selector: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
76 splitter, groups = get_cv(cv_selector) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
77 options['cv'] = splitter | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
78 # set n_jobs | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
79 options['n_jobs'] = N_JOBS | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
80 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
81 if params['algo_selection']['estimator_type'] == 'StackingCVClassifier': | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
82 ensemble_estimator = StackingCVClassifier( | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
83 classifiers=base_estimators, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
84 meta_classifier=meta_estimator, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
85 **options) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
86 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
87 elif params['algo_selection']['estimator_type'] == 'StackingClassifier': | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
88 ensemble_estimator = StackingClassifier( | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
89 classifiers=base_estimators, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
90 meta_classifier=meta_estimator, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
91 **options) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
92 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
93 elif params['algo_selection']['estimator_type'] == 'StackingCVRegressor': | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
94 ensemble_estimator = StackingCVRegressor( | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
95 regressors=base_estimators, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
96 meta_regressor=meta_estimator, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
97 **options) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
98 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
99 else: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
100 ensemble_estimator = StackingRegressor( | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
101 regressors=base_estimators, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
102 meta_regressor=meta_estimator, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
103 **options) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
104 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
105 print(ensemble_estimator) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
106 for base_est in base_estimators: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
107 print(base_est) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
108 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
109 with open(output_obj, 'wb') as out_handler: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
110 pickle.dump(ensemble_estimator, out_handler, pickle.HIGHEST_PROTOCOL) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
111 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
112 if params['get_params'] and outfile_params: | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
113 results = get_search_params(ensemble_estimator) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
114 df = pd.DataFrame(results, columns=['', 'Parameter', 'Value']) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
115 df.to_csv(outfile_params, sep='\t', index=False) | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
116 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
117 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
118 if __name__ == '__main__': | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
119 aparser = argparse.ArgumentParser() | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
120 aparser.add_argument("-b", "--bases", dest="bases") | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
121 aparser.add_argument("-m", "--meta", dest="meta") | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
122 aparser.add_argument("-i", "--inputs", dest="inputs") | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
123 aparser.add_argument("-o", "--outfile", dest="outfile") | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
124 aparser.add_argument("-p", "--outfile_params", dest="outfile_params") | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
125 args = aparser.parse_args() | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
126 | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
127 main(args.inputs, args.outfile, base_paths=args.bases, | 
| 
 
25b74e5f42f4
planemo upload for repository https://github.com/bgruening/galaxytools/tree/master/tools/sklearn commit c0a3a186966888e5787335a7628bf0a4382637e7
 
bgruening 
parents:  
diff
changeset
 | 
128 meta_path=args.meta, outfile_params=args.outfile_params) | 
