From 421abbb622951e25eb6ffa7bd7c0de75309bd50d Mon Sep 17 00:00:00 2001 From: preetiail Date: Sat, 19 Jan 2019 12:36:55 +0000 Subject: [PATCH 1/2] Done --- __pycache__/__init__.cpython-36.pyc | Bin 0 -> 151 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 163 bytes q01_bagging/__pycache__/build.cpython-36.pyc | Bin 0 -> 1328 bytes q01_bagging/build.py | 18 +++++++++++++++--- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 169 bytes .../test_q01_bagging.cpython-36.pyc | Bin 0 -> 960 bytes 6 files changed, 15 insertions(+), 3 deletions(-) create mode 100644 __pycache__/__init__.cpython-36.pyc create mode 100644 q01_bagging/__pycache__/__init__.cpython-36.pyc create mode 100644 q01_bagging/__pycache__/build.cpython-36.pyc create mode 100644 q01_bagging/tests/__pycache__/__init__.cpython-36.pyc create mode 100644 q01_bagging/tests/__pycache__/test_q01_bagging.cpython-36.pyc diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..dfa96bb78556a3a6114703e1be5e8244a8e618b6 GIT binary patch literal 151 zcmXr!<>k_nbdF&Fg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(my3Qzer~FMK~ZXI zNoHbZj(&K4QFd`bVsff}a(+sxerjHEYHm_aYJ6^LNk)E3aeP5hepYI7NwI!>d}dx| aNqoFsLFFwDo80`A(wtN~kmk_nbdF&Fg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SAc#-er~FMK~ZXI zNoHbZj(&K4QFd`bVsff}a(+sxerjHEYHm_aYJ6^LNk)E3aeP5hepYI7NwI#Rfnj`7 mVtRUJUb=pKd}dx|NqoFsLFFwDo80`A(wtN~kWIxv%m4uTg(^<~ literal 0 HcmV?d00001 diff --git a/q01_bagging/__pycache__/build.cpython-36.pyc b/q01_bagging/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8349f7abfc3b9922a4cae009f27073554b365df5 GIT binary patch literal 1328 zcmZ8gy>c5j5C-o5jwh0mWm$4Esl!IJ>^8PDk=wY5XY9c^a|0eg3KZ@~02G^^W5u|1 z$~-_^xp9$Kap9S3Gb#8AX_CcJoG<|f-z~ny?Jjl~5BBzwk0<9ZKX?fJfp$g!^0%<` zZvYH2ED^!*b)-|c#Ko3#rC0dG?_^H~MM%O<#xk16B!LsY>=h|VG2+R5j|D3X5}x;2 zxWZ(>2lFAr48L^%`){48bArhJ4m;?W1Mc#De!yauu--fGrAKa&LvouOv6SuojL02^ ze?X(*8sbDxN4OmtMMaqzu1%(EDGYE&Pk1i0sLE%G^K(hH7E{3$X!gIOvzaJo{~`M{ zࣗn#m0#fb}N-W)S(=vY>?%xcA%$PL&#&Gk=f44!8Xy7B4pI)>fIA@L>v@rJjl zq9v<}OdD!=?%P0Nq_FJSb6EO!fEil)umZ@2!(8Suf95a4*T1sC6ZGRR%g7*uSEvb_ z=mfDIOt?SmzYCUe6VIInHO|Vx2xPaxE4)k^f9@H-ahqi2*vxkt1e#tGbQ-7WZ8RpB zha0<%Z>?K9J6y2CMJt5S)tAqq{x<7R*9k}c zhso#n^`DQQsSvg!pQL35#S#TImC~eF(ASx!MJ>4|sohLDHP;Gu@uaGZhWgej>VEy# ziRuHP1{Q`^6)WpYS+B&M3PZx1qO}37YhE&C>(IKjG{mcA1*k8oSEIBIUu0bewE+ka zR~s(21PDM7zl)bdU2|m2ka#Pdk$@^i7iTRNB%N$pE6e5dJ{c^!w#nE{Cz9d+h_eq! z9YaiieLuda3OYC1yVacMMvt%Von<#p z$CGOz*=fCK!yCq?Mc)NL*n`=}3BHR{z+txz@gY`Lz5W}9`U0fUF$rpDU8-BBX5@~( zl$@&aw16mNrnv;C@CKBvFG;sr195NiKHO5ABg}Mc{lx<9P+rp6r md%rHpJ8%MA8+`+px|aNry^FSIBgl=NiCu2u9N`0ejQ;_^N@IZl literal 0 HcmV?d00001 diff --git a/q01_bagging/build.py b/q01_bagging/build.py index 19f8726..6b43628 100644 --- a/q01_bagging/build.py +++ b/q01_bagging/build.py @@ -1,3 +1,4 @@ +# %load q01_bagging/build.py import pandas as pd from sklearn.model_selection import train_test_split from sklearn.tree import DecisionTreeClassifier @@ -12,8 +13,19 @@ X = dataframe.iloc[:, :-1] 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): + score_dt =[]#create empty list to store scores for different value of estimators + score_dt1 =[] + array1=[10,20,30,40,50] + for i in [0,1,2,3,4]: + bagging_clf2 = BaggingClassifier(DecisionTreeClassifier(),n_estimators=array1[i],max_samples=0.67,max_features=0.67,bootstrap=True, random_state=9) + bagging_clf2.fit(X_train, y_train) + y_pred_decision=bagging_clf2.predict(X_test) + score_dt.append(accuracy_score(y_test, y_pred_decision)) + y_pred_decision1=bagging_clf2.predict(X_train) + score_dt1.append(accuracy_score(y_train, y_pred_decision1)) + plt.plot(array1[i],score_dt[i]) + plt.plot(array1[i],score_dt1[i]) + 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 0000000000000000000000000000000000000000..e099f6a9b39d5b89d02bc49260d2a36c7843cf36 GIT binary patch literal 169 zcmXr!<>fMvbdF&Fg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SD1cAer~FMK~ZXI zNoHbZj(&K4QFd`bVsff}a(+sxerjHEYHm_aYJ6^LNk)E3aeP5hepYI7NwI#Rfnj`7 rVtRUJUb=osYB5kGK0Y%qvm`!Vub}c4hfQvNN@-529mu|7AZ7pn8w} z{u%y~ublQTaAGF=XnMfWj3@Tz`DQ-*Y&;&E9#6h59YX$)&hQ{U2h(rCal)x2B~2*B z*pW`@CN9J-_oP?)iBHKT;Xd!(5#AGY?Iu0m|3so-1E)zuZSYxWGfB08_$U`<-bk6M zTrWhn0cwQwXK9`nRi5FI{lL9*F#QaiAPMCpaX9799Z6iIhuPykQ1$E(IX>=^P{8BB z1OeCtOuqqVh@orxi{6rJ$GEqY(_^xRgpjQBKX;yxHFiiKwKr9mZsUVny}0-RMH|6G zsJ|&iWpwzGzX~sl8&N?NdCCQxLa-gCS_@?^mQ5(;Z* z^2y?-9pTm<*9S(8*Gp(XS5G^lopfPYS3!ig3OcIwDOB~R^YgeXG-v&)p u7_3v_bF}@U!iR6#F0DUn3d!5|(jMqE*b=l|2Jg2eeZX7M$TFhvx&HvaMCk(n literal 0 HcmV?d00001 From 826226ba02d33b6b52b52efaca51c362dc4d4f05 Mon Sep 17 00:00:00 2001 From: preetiail Date: Sat, 19 Jan 2019 18:29:11 +0000 Subject: [PATCH 2/2] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 168 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 1860 bytes q02_stacking_clf/build.py | 42 +++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 174 bytes .../test_q02_stacking_clf.cpython-36.pyc | Bin 0 -> 2382 bytes 5 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 q02_stacking_clf/__pycache__/__init__.cpython-36.pyc create mode 100644 q02_stacking_clf/__pycache__/build.cpython-36.pyc create mode 100644 q02_stacking_clf/tests/__pycache__/__init__.cpython-36.pyc create mode 100644 q02_stacking_clf/tests/__pycache__/test_q02_stacking_clf.cpython-36.pyc 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 0000000000000000000000000000000000000000..abd99ef1f30730e97a0e8082e62357eb60700e2b GIT binary patch literal 168 zcmXr!<>k_nbdF&Fg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SEznQer~FMK~ZXI zNoHbZj(&K4QFd`bVsff}a(+sxerjHEYHm_aYJ6^LNk)E3aeP5hepYI7NwI#Rfl+*M rNn&z#W?p)Ha!#6le0*kJW=VX!UP0w84x8Nkl+v73JCJq7K+FID?4B%c literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..7fd9566f93043010ed6a2d562197a8f284d56b9b GIT binary patch literal 1860 zcmaJ>%T6Ol6z%G_A7Eo%1_p-5Y%E21fL#)cz9KIc}SEG$$>a(cB@F^oTrC(Q@{Tj)GP zhCvL15+g+zA?2HinOfM=zLnUigB|VLiJN-Z)4r4VX$4ob?hHKjQk~&_1HN0dI zH|WBkN&FGQOLS?_A|CNRn_$;Jn>};Gz{^k2wnkPcqRVuJR7s80$M%(tSMeHN$8G8W zvM@$?gIY6hQ+qYCI5zPX_2>p^z|(|ilPry0{0gwm8P+7Nv4gh(*?N(+Lzc1 zU(s#4)3@+0StV`}l*=*qdlaTYc7gGk2*8994a}h`9w9hEuc?RgxcVWLD zXZ>fXi(wSqu`n72JjxkWlRt+_Nh%m5q6V2%z}bZ5=R2oJdF6q2^59VKhf=v zZzfPYM#q$u=|SU9RMuITkvt8!2n8(9YO{pT}6h$!?FS;_P3*{N-|2=iG(nWi#JU?O!i)m-Q{^i$~kBbd?{7y=1% zWFqBT!XBXqBpl%mJmL^EGE3+WU}0>kF+}}AMc5_k!I)TM^TEC>u_j#gayXY}Vw zy;Ac<#*wV(m@2(r4YmWj{&n8H$y3^e6HyU|ank)UXScivBifB%uP)6vO|KIgq*UDG zgu|ZsfJTCMe|meYia?iE5GB3t^F`h0c(<_qY&4#q$>@--J#q$6w@Ky5m2>-zCL9mnErNxkKs?~i)LlVI6LRQp|q{qUPN;^*SNTN%LhHMqGSX&uIpk|KkfrqVk z7e~q*%lh^7_oZs*=-KFb>_nFe+gIx-GN)>3@l*xB;9L4%0Sk8t{aP`^zXVeU!sm~V ge5;DqP|IvXA*xbTa`>of!rS(1@b>Gd37G2t03kW*y#N3J literal 0 HcmV?d00001 diff --git a/q02_stacking_clf/build.py b/q02_stacking_clf/build.py index 7b1c5f8..8fc49c8 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 @@ -13,6 +15,44 @@ y = dataframe.iloc[:, -1] X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=9) +LR=LogisticRegression(random_state=9) +DT1=DecisionTreeClassifier(random_state=9) +DT2=DecisionTreeClassifier(max_depth=9,random_state=9) +bagging_clf1 = BaggingClassifier(LR, n_estimators=100, max_samples=100, + bootstrap=True, random_state=9,oob_score=True) +bagging_clf2 = BaggingClassifier(DT1, n_estimators=100, max_samples=100, + bootstrap=True,oob_score=True) -# Write your code here +bagging_clf3 = BaggingClassifier(DT2, n_estimators=100, max_samples=100, + bootstrap=True, random_state=9,oob_score=True) + + + +def ModelUse(ModelToUse): + ModelToUse.fit(X_train, y_train) + y_pred_decision=ModelToUse.predict(X_test) + score=accuracy_score(y_test.reshape(-1,1),y_pred_decision) + y_pred_decision=y_pred_decision.reshape(185,1) + NewXtest=np.concatenate((X_test, y_pred_decision), axis=1) + y_pred_decision1=ModelToUse.predict(X_train) + y_pred_decision1=y_pred_decision1.reshape(429,1) + NewXtrain=np.concatenate((X_train, y_pred_decision1), axis=1) + return(NewXtest,NewXtrain) + +model=[bagging_clf1,bagging_clf2,bagging_clf3] + +def stacking_clf(model,Xtrain,y_train,Xtest,y_test): + stacking_clf = StackingClassifier(classifiers = model, + meta_classifier = LR) + stacking_clf.fit(NewXtrain, y_train) + y_pred2 = stacking_clf.predict(NewXtest) + accuracy = accuracy_score(y_test, y_pred2) + return(accuracy) + +NewXtest,NewXtrain=ModelUse(bagging_clf1) +stacking_clf(model,NewXtrain,y_train,NewXtest,y_test) +NewXtest,NewXtrain=ModelUse(bagging_clf2) +stacking_clf(model,NewXtrain,y_train,NewXtest,y_test) +NewXtest,NewXtrain=ModelUse(bagging_clf3) +stacking_clf(model,NewXtrain,y_train,NewXtest,y_test) 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 0000000000000000000000000000000000000000..ccb89b313ffa0f842b666338b576756db46a6014 GIT binary patch literal 174 zcmXr!<>k_nbdF&Fg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SG0acer~FMK~ZXI zNoHbZj(&K4QFd`bVsff}a(+sxerjHEYHm_aYJ6^LNk)E3aeP5hepYI7NwI#Rfl+*M wNn&z#W?p)Ha!#6lNop}rI6gizFS8^*Uaz3?7Kcr4eoARhsvXGEVjyM!02Zb$)&Kwi literal 0 HcmV?d00001 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 0000000000000000000000000000000000000000..24f1c7140fbcd97ba5c78655883dba915953e913 GIT binary patch literal 2382 zcma)7&2HO95ayDUM9PvQ|J(U9(>5p+q*h{|3KUIRCk+a;E|3^#un54=+>uOYNh-Um zAQoKopycQW>9McTYkT6MmmUheLND#?QnqC$0ZM|i!`T^f_M2~Zx0=oRt+nlEzj~JS zmo;_ayLBHQ84$~279-qB2_?j0HgmY0I@CekVlH>n3auEu!mDYG){I`|Ug}fd=rvwX zXXuR4J>E#0v}tso&(ce9>7d2xBSPn3?qHtz%zta6Tz+eJ?KO)oOj%cqWf5wy0E?`_ znr!yiedf|7x=dH-D$Jne(lMcH;7_#6Mr*Rxu}!Z)6E3qkyytOto-G_#=~c9?U9eq4 z+m#Ep>u?pW!S$X)*B@DIkuANk*br8JxL>#3rT0RmyFUr z2TA?CJXaDI*f$~6&-1-d#<_qPgHJDw)qQ;AZ4_Wp!Ypbt!t6H|b(k|5T~@(&msME} z#|rZhc)w_A#Gg!o9P8!jOMg|Cf=L|ZKNl5oNgej=~ zoJp)@et=2H&dWQSxgWPWBg2bx8~wv#t}O6W#5yJ*b+Q)m$nc|!KyJJfa1L4> zXrR50$~3eku(&tar!YD@V+Xy4pPwSgpc@Ui3SLEg05V{CkmV{s4#oRH&)|99qwSnw zD_Z!iwk_sy5DQvpC`+-VwPh3^<8!*WbBR}R#w30V6`i=k>MK`OMis-2>Jd>jMwEAi zY??pvP9ps&D1D8P-0Fp{R7R#Z}?zTqc+l zUKGaz5ygiWfGMuMQ_`?ZJ=Ec!YRGiQSfquFu*q;^_d;{M%Zcd^ydUOIJ_xgJapsI% zeHxf%>;3Wb_ug-R{(VoZV9@Z^<7r%3jzl?Q37j;ep-{VKkQA#JC)TvMti=^AuA(UB zO60!cX)epIJYi6vea|h8Z#=42yagV*Ll$ z8A zZ;M4`Z;)_SlCPFz`Y2MS!RU&7!66dahM{DLI~Gpi$su&x(8kHE!VOE*v}y6g#FGpI z^-_QfO(WVmnL63Ugg$I&wd{_6Uyf4a1e5rSRa~w6u^zGSovP|af QRUGT2VS6|`dF;CLAB@g@L;wH) literal 0 HcmV?d00001