diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index 14812de..007df6b 100644 Binary files a/__pycache__/__init__.cpython-36.pyc and b/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_grid_search/__pycache__/__init__.cpython-36.pyc b/q01_grid_search/__pycache__/__init__.cpython-36.pyc index 9413fbb..a7cc38d 100644 Binary files a/q01_grid_search/__pycache__/__init__.cpython-36.pyc and b/q01_grid_search/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_grid_search/__pycache__/build.cpython-36.pyc b/q01_grid_search/__pycache__/build.cpython-36.pyc index dbd3e7a..7cc7d52 100644 Binary files a/q01_grid_search/__pycache__/build.cpython-36.pyc and b/q01_grid_search/__pycache__/build.cpython-36.pyc differ diff --git a/q01_grid_search/build.py b/q01_grid_search/build.py index 20c99a1..17194d8 100644 --- a/q01_grid_search/build.py +++ b/q01_grid_search/build.py @@ -1,22 +1,44 @@ +# %load q01_grid_search/build.py # Default imports import warnings -warnings.filterwarnings("ignore") +warnings.filterwarnings('ignore') import pandas as pd from sklearn.model_selection import train_test_split from sklearn.ensemble import RandomForestClassifier from sklearn.model_selection import GridSearchCV - +from sklearn.metrics import accuracy_score, roc_auc_score, make_scorer +import numpy as np loan_data = pd.read_csv('data/loan_prediction.csv') X_bal = loan_data.iloc[:, :-1] y_bal = loan_data.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X_bal, y_bal, test_size=0.33, random_state=9) -param_grid = {"max_features": ['sqrt', 4, "log2"], - "n_estimators": [10, 50, 120], - "max_depth": [40, 20, 10], - "max_leaf_nodes": [5, 10, 2]} - +param_grid = {'max_features': ['sqrt', 4, 'log2'], + 'n_estimators': [10, 50, 120], + 'max_depth': [40, 20, 10], + 'max_leaf_nodes': [5, 10, 2]} +model = RandomForestClassifier(random_state=9,oob_score=True) # Write your solution here : +def grid_search(X_train,y_train,model, param_grid,cv=3): + clf = model + np.random.seed(9) + parameters = param_grid + acc_scorer = make_scorer(accuracy_score) + + # Run the grid search + grid_obj = GridSearchCV(clf, param_grid, scoring=acc_scorer) + grid_obj = grid_obj.fit(X_train, y_train) + variable1=list() + variable3=list() + for i in grid_obj.grid_scores_: + variable1.append(i[0]) + variable3.append(i[1]) + variable2=np.array(variable3) + return grid_obj,variable1,variable2 + +grid_search(X_train,y_train,model,param_grid,cv=3) + + diff --git a/q01_grid_search/tests/__pycache__/__init__.cpython-36.pyc b/q01_grid_search/tests/__pycache__/__init__.cpython-36.pyc index 5cb0753..fbfc376 100644 Binary files a/q01_grid_search/tests/__pycache__/__init__.cpython-36.pyc and b/q01_grid_search/tests/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_grid_search/tests/__pycache__/test_q01_grid_search.cpython-36.pyc b/q01_grid_search/tests/__pycache__/test_q01_grid_search.cpython-36.pyc index 6061f23..45079ed 100644 Binary files a/q01_grid_search/tests/__pycache__/test_q01_grid_search.cpython-36.pyc and b/q01_grid_search/tests/__pycache__/test_q01_grid_search.cpython-36.pyc differ