diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000..ff400dc Binary files /dev/null and b/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_bagging/__pycache__/__init__.cpython-36.pyc b/q01_bagging/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000..a417501 Binary files /dev/null and b/q01_bagging/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_bagging/__pycache__/build.cpython-36.pyc b/q01_bagging/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000..07110e7 Binary files /dev/null and b/q01_bagging/__pycache__/build.cpython-36.pyc differ diff --git a/q01_bagging/build.py b/q01_bagging/build.py index 19f8726..d701a3d 100644 --- a/q01_bagging/build.py +++ b/q01_bagging/build.py @@ -1,11 +1,13 @@ +# %load q01_bagging/build.py import pandas as pd +import numpy as np from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier from sklearn.ensemble import BaggingClassifier import matplotlib.pyplot as plt from sklearn.metrics import accuracy_score -plt.switch_backend('agg') +plt.switch_backend('agg') # Data Loading dataframe = pd.read_csv('data/loan_prediction.csv') @@ -13,7 +15,30 @@ y = dataframe.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=9) - -# Write your code here +def bagging(X_train,X_test,y_train,y_test,n_est): + np.random.seed(9) + # Fitting bagging classifier with Logisitc Regression + bagging_clf2 = BaggingClassifier(DecisionTreeClassifier(), n_estimators=n_est, max_samples=67, + bootstrap=True, random_state=9) + bagging_clf2.fit(X_train, y_train) + y_pred = bagging_clf2.predict(X_train) + + y_pred_bagging = bagging_clf2.predict(X_test) + score_bc_dt = accuracy_score(y_test, y_pred_bagging) + score_bc = accuracy_score(y_train, y_pred) + + return score_bc,score_bc_dt + +xaxis = range (1,51) +yaxis = [] +zaxis = [] +for i in range (1,51): + a,b = bagging(X_train,X_test,y_train,y_test,i) + yaxis.append(a) + zaxis.append(b) + +plt.plot(xaxis,yaxis,c='blue') +plt.plot(xaxis,zaxis , c ='red') +plt.show() diff --git a/q01_bagging/tests/__pycache__/__init__.cpython-36.pyc b/q01_bagging/tests/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000..1f5e413 Binary files /dev/null and b/q01_bagging/tests/__pycache__/__init__.cpython-36.pyc differ diff --git a/q01_bagging/tests/__pycache__/test_q01_bagging.cpython-36.pyc b/q01_bagging/tests/__pycache__/test_q01_bagging.cpython-36.pyc new file mode 100644 index 0000000..486a2e3 Binary files /dev/null and b/q01_bagging/tests/__pycache__/test_q01_bagging.cpython-36.pyc differ diff --git a/q02_stacking_clf/__pycache__/__init__.cpython-36.pyc b/q02_stacking_clf/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000..0bcd88f Binary files /dev/null and b/q02_stacking_clf/__pycache__/__init__.cpython-36.pyc differ diff --git a/q02_stacking_clf/__pycache__/build.cpython-36.pyc b/q02_stacking_clf/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000..851a1d9 Binary files /dev/null and b/q02_stacking_clf/__pycache__/build.cpython-36.pyc differ diff --git a/q02_stacking_clf/build.py b/q02_stacking_clf/build.py index 7b1c5f8..c3d6267 100644 --- a/q02_stacking_clf/build.py +++ b/q02_stacking_clf/build.py @@ -1,9 +1,11 @@ +# %load q02_stacking_clf/build.py # Default imports from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier from sklearn.linear_model import LogisticRegression from sklearn.ensemble import BaggingClassifier from sklearn.metrics import accuracy_score +from mlxtend.classifier import StackingClassifier import pandas as pd import numpy as np @@ -14,5 +16,13 @@ X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=9) -# Write your code here +def stacking_clf(model,X_train,y_train, X_test, y_test): + for k in model: + k.fit(X_train, y_train) + y_pred = k.predict(X_test) + accuracy = accuracy_score(y_test, y_pred) + return accuracy + + + diff --git a/q02_stacking_clf/tests/__pycache__/__init__.cpython-36.pyc b/q02_stacking_clf/tests/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000..b0bc437 Binary files /dev/null and b/q02_stacking_clf/tests/__pycache__/__init__.cpython-36.pyc differ diff --git a/q02_stacking_clf/tests/__pycache__/test_q02_stacking_clf.cpython-36.pyc b/q02_stacking_clf/tests/__pycache__/test_q02_stacking_clf.cpython-36.pyc new file mode 100644 index 0000000..188c1c6 Binary files /dev/null and b/q02_stacking_clf/tests/__pycache__/test_q02_stacking_clf.cpython-36.pyc differ