diff --git a/jet-tagging.ipynb b/jet-tagging.ipynb index 318377e..26913ba 100644 --- a/jet-tagging.ipynb +++ b/jet-tagging.ipynb @@ -112,7 +112,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "metadata": { "collapsed": false }, @@ -132,7 +132,8 @@ "from sklearn.metrics import roc_auc_score\n", "from sklearn.ensemble import GradientBoostingClassifier, GradientBoostingRegressor\n", "from sklearn.ensemble import RandomForestClassifier, RandomForestRegressor, ExtraTreesClassifier\n", - "from rep.estimators import XGBoostClassifier, SklearnClassifier" + "from rep.estimators import XGBoostClassifier, SklearnClassifier\n", + "import cPickle as pickle" ] }, { @@ -1021,18 +1022,14 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": true }, "outputs": [], "source": [ - "best_xgb_multi_proba = best_xgb_multi_folding.predict_proba(train_data)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Results" + "# Save classifier\n", + "clf_pickle = open('best_xgb_multi_folding.pkl', 'wb')\n", + "#pickle.dump(best_xgb_multi_folding, clf_pickle)\n", + "clf_pickle.close()" ] }, { @@ -1043,260 +1040,21 @@ }, "outputs": [], "source": [ - "best_xgb_multi_results = get_result(best_xgb_multi_proba, labels, \"best_xgb_multiclass\")" - ] - }, - { - "cell_type": "code", - "execution_count": 200, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
b vs cb vs lightc vs light
name
multiclass0.9495360.9838560.973569
pca_multiclass0.9451190.9854360.977200
sel_new_multiclass0.9507720.9880230.980581
best_xgb_multiclass0.9493410.9849080.975656
\n", - "
" - ], - "text/plain": [ - " b vs c b vs light c vs light\n", - "name \n", - "multiclass 0.949536 0.983856 0.973569\n", - "pca_multiclass 0.945119 0.985436 0.977200\n", - "sel_new_multiclass 0.950772 0.988023 0.980581\n", - "best_xgb_multiclass 0.949341 0.984908 0.975656" - ] - }, - "execution_count": 200, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "result = pandas.concat([multiclass_result, \n", - " pca_multiclass_result, \n", - " sel_new_multi_results,\n", - " best_xgb_multi_results])\n", - "result.index = result['name']\n", - "result = result.drop('name', axis=1)\n", - "result" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Grid search RF" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Search" + "# Read classifier\n", + "clf_pickle2 = open('best_xgb_multi_folding.pkl', 'rb')\n", + "#best_xgb_multi_folding = pickle.load(clf_pickle2)\n", + "clf_pickle2.close()" ] }, { "cell_type": "code", - "execution_count": 215, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "GridSearchCV(cv=2, error_score='raise',\n", - " estimator=RandomForestClassifier(bootstrap=True, class_weight='auto', criterion='gini',\n", - " max_depth=None, max_features='auto', max_leaf_nodes=None,\n", - " min_samples_leaf=1, min_samples_split=2,\n", - " min_weight_fraction_leaf=0.0, n_estimators=1000, n_jobs=1,\n", - " oob_score=False, random_state=None, verbose=0,\n", - " warm_start=False),\n", - " fit_params={}, iid=True, loss_func=None, n_jobs=8,\n", - " param_grid={'max_features': ['auto', 0.3, 0.5, 1.0], 'max_depth': [4, 8, 12, None]},\n", - " pre_dispatch='2*n_jobs', refit=True, score_func=None,\n", - " scoring=<__main__.MyMeanRocAucScorer object at 0x7f14ac0ec4d0>,\n", - " verbose=0)" - ] - }, - "execution_count": 215, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from sklearn.grid_search import GridSearchCV\n", - "from rep.utils import train_test_split\n", - "\n", - "train_train_data, test_data, train_labels, test_labels = train_test_split(train_data, labels, test_size=0.3)\n", - "\n", - "grid_param = {}\n", - "grid_param['max_features'] = ['auto', 0.3, 0.5, 1.0]\n", - "grid_param['max_depth'] = [4, 8, 12, None]\n", - "\n", - "rf_base = RandomForestClassifier(n_estimators=1000, max_depth=None, max_features='auto', class_weight='auto')\n", - "\n", - "grid_rf = GridSearchCV(estimator=rf_base, param_grid=grid_param, cv=2, \n", - " scoring=MyMeanRocAucScorer(test_data, test_labels), n_jobs=8)\n", - "grid_rf.fit(train_train_data, train_labels)" - ] - }, - { - "cell_type": "code", - "execution_count": 216, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'max_depth': 12, 'max_features': 'auto'}" - ] - }, - "execution_count": 216, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "grid_rf.best_params_" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train" - ] - }, - { - "cell_type": "code", - "execution_count": 217, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "CPU times: user 2min 16s, sys: 216 ms, total: 2min 16s\n", - "Wall time: 2min 16s\n" - ] - }, - { - "data": { - "text/plain": [ - "FoldingClassifier(base_estimator=RandomForestClassifier(bootstrap=True, class_weight='auto', criterion='gini',\n", - " max_depth=12, max_features='auto', max_leaf_nodes=None,\n", - " min_samples_leaf=1, min_samples_split=2,\n", - " min_weight_fraction_leaf=0.0, n_estimators=1000, n_jobs=1,\n", - " oob_score=False, random_state=None, verbose=0,\n", - " warm_start=False),\n", - " features=['Feature_0', 'Feature_1', 'Feature_2', 'Feature_3', 'Feature_4', 'Feature_5', 'Feature_6', 'Feature_7', 'Feature_8'],\n", - " n_folds=2, parallel_profile=None, random_state=11)" - ] - }, - "execution_count": 217, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rf_best = grid_rf.best_estimator_\n", - "best_rf_multi_folding = FoldingClassifier(rf_best, n_folds=2, random_state=11)\n", - "%time best_rf_multi_folding.fit(train_data, labels)" - ] - }, - { - "cell_type": "code", - "execution_count": 218, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "" - ] - }, - "execution_count": 218, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "rf_best.get_params" - ] - }, - { - "cell_type": "code", - "execution_count": 219, + "execution_count": null, "metadata": { "collapsed": false }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "KFold prediction using folds column\n" - ] - } - ], + "outputs": [], "source": [ - "best_rf_multi_proba = best_rf_multi_folding.predict_proba(train_data)" + "best_xgb_multi_proba = best_xgb_multi_folding.predict_proba(train_data)" ] }, { @@ -1308,18 +1066,18 @@ }, { "cell_type": "code", - "execution_count": 220, + "execution_count": null, "metadata": { "collapsed": true }, "outputs": [], "source": [ - "best_rf_multi_results = get_result(best_rf_multi_proba, labels, \"best_rf_multiclass\")" + "best_xgb_multi_results = get_result(best_xgb_multi_proba, labels, \"best_xgb_multiclass\")" ] }, { "cell_type": "code", - "execution_count": 221, + "execution_count": 200, "metadata": { "collapsed": false }, @@ -1368,12 +1126,6 @@ " 0.984908\n", " 0.975656\n", " \n", - " \n", - " best_rf_multiclass\n", - " 0.947559\n", - " 0.981816\n", - " 0.968406\n", - " \n", " \n", "\n", "" @@ -1384,11 +1136,10 @@ "multiclass 0.949536 0.983856 0.973569\n", "pca_multiclass 0.945119 0.985436 0.977200\n", "sel_new_multiclass 0.950772 0.988023 0.980581\n", - "best_xgb_multiclass 0.949341 0.984908 0.975656\n", - "best_rf_multiclass 0.947559 0.981816 0.968406" + "best_xgb_multiclass 0.949341 0.984908 0.975656" ] }, - "execution_count": 221, + "execution_count": 200, "metadata": {}, "output_type": "execute_result" } @@ -1397,8 +1148,7 @@ "result = pandas.concat([multiclass_result, \n", " pca_multiclass_result, \n", " sel_new_multi_results,\n", - " best_xgb_multi_results,\n", - " best_rf_multi_results])\n", + " best_xgb_multi_results])\n", "result.index = result['name']\n", "result = result.drop('name', axis=1)\n", "result" @@ -1408,7 +1158,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Grid search AdaBoost" + "# Grid search XGBoost + features generation + features selection" ] }, { @@ -1422,32 +1172,33 @@ "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": true }, "outputs": [], "source": [ "from sklearn.grid_search import GridSearchCV\n", "from rep.utils import train_test_split\n", - "from sklearn.ensemble import AdaBoostClassifier\n", - "from sklearn.tree import DecisionTreeClassifier\n", "\n", - "train_train_data, test_data, train_labels, test_labels = train_test_split(train_data, labels, test_size=0.3)\n", + "sel_new_train_train_data, sel_new_test_data, sel_new_train_labels, sel_new_test_labels = \\\n", + "train_test_split(sel_new_train_data, labels, test_size=0.3)\n", "\n", "grid_param = {}\n", - "grid_param['learning_rate'] = [0.1, 0.05, 0.01]\n", - "grid_param['max_depth'] = [4, 8, 12, None]\n", + "grid_param['eta'] = [0.1, 0.05, 0.01]\n", + "grid_param['max_depth'] = [6, 8, 12, 100]\n", + "grid_param['colsample'] = [0.3, 0.5, 0.7, 1.0]\n", + "grid_param['subsample'] = [0.3, 0.5, 0.7, 1.0]\n", "\n", - "ada_base = AdaBoostClassifier(base_estimator=DecisionTreeClassifier(max_depth=8, max_features='auto', class_weight='balanced'),\n", - " n_estimators=1000, learning_rate=0.01)\n", + "xgb_base = XGBoostClassifier(n_estimators=1000, colsample=0.7, eta=0.01, nthreads=1, \n", + " subsample=0.5, max_depth=8)\n", "\n", - "grid_ada = GridSearchCV(estimator=ada_base, param_grid=grid_param, cv=2, \n", - " scoring=MyMeanRocAucScorer(test_data, test_labels), n_jobs=8)\n", - "grid_ada.fit(train_train_data, train_labels)" + "sel_new_grid_xgb = GridSearchCV(estimator=xgb_base, param_grid=grid_param, cv=2, \n", + " scoring=MyMeanRocAucScorer(sel_new_test_data, sel_new_test_labels), n_jobs=8)\n", + "sel_new_grid_xgb.fit(sel_new_train_train_data, sel_new_train_labels)" ] }, { "cell_type": "code", - "execution_count": 212, + "execution_count": 241, "metadata": { "collapsed": false }, @@ -1455,16 +1206,16 @@ { "data": { "text/plain": [ - "{'learning_rate': 0.1}" + "{'colsample': 0.7, 'eta': 0.01, 'max_depth': 6, 'subsample': 0.5}" ] }, - "execution_count": 212, + "execution_count": 241, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "grid_ada.best_params_" + "sel_new_grid_xgb.best_params_" ] }, { @@ -1474,37 +1225,6 @@ "## Train" ] }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "ada_best = grid_ada.best_estimator_\n", - "best_ada_multi_folding = FoldingClassifier(ada_best, n_folds=2, random_state=11)\n", - "%time best_ada_multi_folding.fit(train_data, labels)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": false - }, - "outputs": [], - "source": [ - "best_ada_multi_proba = best_ada_multi_folding.predict_proba(train_data)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Results" - ] - }, { "cell_type": "code", "execution_count": null, @@ -1513,193 +1233,48 @@ }, "outputs": [], "source": [ - "best_ada_multi_results = get_result(best_ada_multi_proba, labels, \"best_ada_multiclass\")" - ] - }, - { - "cell_type": "code", - "execution_count": 222, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
b vs cb vs lightc vs light
name
multiclass0.9495360.9838560.973569
pca_multiclass0.9451190.9854360.977200
sel_new_multiclass0.9507720.9880230.980581
best_xgb_multiclass0.9493410.9849080.975656
best_rf_multiclass0.9475590.9818160.968406
best_ada_multiclass0.9391010.9774990.958886
\n", - "
" - ], - "text/plain": [ - " b vs c b vs light c vs light\n", - "name \n", - "multiclass 0.949536 0.983856 0.973569\n", - "pca_multiclass 0.945119 0.985436 0.977200\n", - "sel_new_multiclass 0.950772 0.988023 0.980581\n", - "best_xgb_multiclass 0.949341 0.984908 0.975656\n", - "best_rf_multiclass 0.947559 0.981816 0.968406\n", - "best_ada_multiclass 0.939101 0.977499 0.958886" - ] - }, - "execution_count": 222, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "result = pandas.concat([multiclass_result, \n", - " pca_multiclass_result, \n", - " sel_new_multi_results,\n", - " best_xgb_multi_results,\n", - " best_rf_multi_results,\n", - " best_ada_multi_results])\n", - "result.index = result['name']\n", - "result = result.drop('name', axis=1)\n", - "result" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Grid search ExtraTreeClassifier" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Search" + "sel_new_xgb_best = sel_new_grid_xgb.best_estimator_.set_params(features=None)\n", + "sel_new_best_xgb_multi_folding = FoldingClassifier(sel_new_xgb_best, n_folds=2, random_state=11)\n", + "%time sel_new_best_xgb_multi_folding.fit(sel_new_train_data, labels)" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": true }, "outputs": [], "source": [ - "from sklearn.grid_search import GridSearchCV\n", - "from rep.utils import train_test_split\n", - "\n", - "train_train_data, test_data, train_labels, test_labels = train_test_split(train_data, labels, test_size=0.3)\n", - "\n", - "grid_param = {}\n", - "grid_param['max_features'] = ['auto', 0.3, 0.5, 0.7, 1.0]\n", - "grid_param['max_depth'] = [4, 8, 12, None]\n", - "\n", - "ex_base = ExtraTreesClassifier(n_estimators=1000, max_depth=6, max_features='auto', class_weight='balanced', n_jobs=4)\n", - "\n", - "ex_base = GridSearchCV(estimator=ex_base, param_grid=grid_param, cv=2, \n", - " scoring=MyMeanRocAucScorer(test_data, test_labels), n_jobs=8)\n", - "ex_base.fit(train_train_data, train_labels)" - ] - }, - { - "cell_type": "code", - "execution_count": 213, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/plain": [ - "{'max_depth': 8, 'max_features': 1.0}" - ] - }, - "execution_count": 213, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "ex_base.best_params_" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "## Train" + "# Save classifier\n", + "clf_pickle = open('sel_new_best_xgb_multi_folding.pkl', 'wb')\n", + "#pickle.dump(sel_new_best_xgb_multi_folding, clf_pickle)\n", + "clf_pickle.close()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": true }, "outputs": [], "source": [ - "ex_best = ex_base.best_estimator_\n", - "best_ex_multi_folding = FoldingClassifier(ex_best, n_folds=2, random_state=11)\n", - "%time best_ex_multi_folding.fit(train_data, labels)" + "# Read classifier\n", + "clf_pickle2 = open('sel_new_best_xgb_multi_folding.pkl', 'rb')\n", + "#sel_new_best_xgb_multi_folding = pickle.load(clf_pickle2)\n", + "clf_pickle2.close()" ] }, { "cell_type": "code", "execution_count": null, "metadata": { - "collapsed": false + "collapsed": true }, "outputs": [], "source": [ - "best_ex_multi_proba = best_ex_multi_folding.predict_proba(train_data)" + "sel_new_best_xgb_multi_proba = sel_new_best_xgb_multi_folding.predict_proba(sel_new_train_data)" ] }, { @@ -1717,12 +1292,12 @@ }, "outputs": [], "source": [ - "best_ex_multi_results = get_result(best_ex_multi_proba, labels, \"best_ex_multiclass\")" + "sel_new_best_xgb_multi_results = get_result(sel_new_best_xgb_multi_proba, labels, \"sel_new_best_xgb_multiclass\")" ] }, { "cell_type": "code", - "execution_count": 223, + "execution_count": 242, "metadata": { "collapsed": false }, @@ -1772,181 +1347,26 @@ " 0.975656\n", " \n", " \n", - " best_rf_multiclass\n", - " 0.947559\n", - " 0.981816\n", - " 0.968406\n", - " \n", - " \n", - " best_ada_multiclass\n", - " 0.939101\n", - " 0.977499\n", - " 0.958886\n", - " \n", - " \n", - " best_ex_multiclass\n", - " 0.934843\n", - " 0.973519\n", - " 0.953799\n", + " sel_new_best_xgb_multiclass\n", + " 0.951279\n", + " 0.987887\n", + " 0.980127\n", " \n", " \n", "\n", "" ], "text/plain": [ - " b vs c b vs light c vs light\n", - "name \n", - "multiclass 0.949536 0.983856 0.973569\n", - "pca_multiclass 0.945119 0.985436 0.977200\n", - "sel_new_multiclass 0.950772 0.988023 0.980581\n", - "best_xgb_multiclass 0.949341 0.984908 0.975656\n", - "best_rf_multiclass 0.947559 0.981816 0.968406\n", - "best_ada_multiclass 0.939101 0.977499 0.958886\n", - "best_ex_multiclass 0.934843 0.973519 0.953799" - ] - }, - "execution_count": 223, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "result = pandas.concat([multiclass_result, \n", - " pca_multiclass_result, \n", - " sel_new_multi_results,\n", - " best_xgb_multi_results,\n", - " best_rf_multi_results,\n", - " best_ada_multi_results,\n", - " best_ex_multi_results])\n", - "result.index = result['name']\n", - "result = result.drop('name', axis=1)\n", - "result" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "collapsed": true - }, - "source": [ - "# Combination" - ] - }, - { - "cell_type": "code", - "execution_count": 230, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "comb_proba = 0.5 * (best_xgb_multi_proba + best_rf_multi_proba)" - ] - }, - { - "cell_type": "code", - "execution_count": 231, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [ - "comb_multi_results = get_result(comb_proba, labels, \"comb_multiclass\")" - ] - }, - { - "cell_type": "code", - "execution_count": 232, - "metadata": { - "collapsed": false - }, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
b vs cb vs lightc vs light
name
multiclass0.9495360.9838560.973569
pca_multiclass0.9451190.9854360.977200
sel_new_multiclass0.9507720.9880230.980581
best_xgb_multiclass0.9493410.9849080.975656
best_rf_multiclass0.9475590.9818160.968406
best_ada_multiclass0.9391010.9774990.958886
best_ex_multiclass0.9348430.9735190.953799
comb_multiclass0.9493070.9838890.973104
\n", - "
" - ], - "text/plain": [ - " b vs c b vs light c vs light\n", - "name \n", - "multiclass 0.949536 0.983856 0.973569\n", - "pca_multiclass 0.945119 0.985436 0.977200\n", - "sel_new_multiclass 0.950772 0.988023 0.980581\n", - "best_xgb_multiclass 0.949341 0.984908 0.975656\n", - "best_rf_multiclass 0.947559 0.981816 0.968406\n", - "best_ada_multiclass 0.939101 0.977499 0.958886\n", - "best_ex_multiclass 0.934843 0.973519 0.953799\n", - "comb_multiclass 0.949307 0.983889 0.973104" + " b vs c b vs light c vs light\n", + "name \n", + "multiclass 0.949536 0.983856 0.973569\n", + "pca_multiclass 0.945119 0.985436 0.977200\n", + "sel_new_multiclass 0.950772 0.988023 0.980581\n", + "best_xgb_multiclass 0.949341 0.984908 0.975656\n", + "sel_new_best_xgb_multiclass 0.951279 0.987887 0.980127" ] }, - "execution_count": 232, + "execution_count": 242, "metadata": {}, "output_type": "execute_result" } @@ -1956,10 +1376,7 @@ " pca_multiclass_result, \n", " sel_new_multi_results,\n", " best_xgb_multi_results,\n", - " best_rf_multi_results,\n", - " best_ada_multi_results,\n", - " best_ex_multi_results,\n", - " comb_multi_results])\n", + " sel_new_best_xgb_multi_results])\n", "result.index = result['name']\n", "result = result.drop('name', axis=1)\n", "result"