From 0eb3046fbb8038d8d1879c736e8a393b0d9a2103 Mon Sep 17 00:00:00 2001 From: geraldhood Date: Mon, 4 Jun 2018 08:48:38 +0000 Subject: [PATCH 1/2] Done --- __init__.pyc | Bin 163 -> 152 bytes q01_grid_search/__init__.pyc | Bin 179 -> 168 bytes q01_grid_search/build.py | 14 +++++++++----- q01_grid_search/build.pyc | Bin 1255 -> 1363 bytes q01_grid_search/tests/__init__.pyc | Bin 180 -> 174 bytes .../tests/test_q01_grid_search.pyc | Bin 5647 -> 5594 bytes 6 files changed, 9 insertions(+), 5 deletions(-) diff --git a/__init__.pyc b/__init__.pyc index 9f1c57445897b3116333dad6788bdb6dff96583b..62fd5b1d76ef459f07f00aa005503e10cf3400fa 100644 GIT binary patch delta 108 zcmZ3?ID?Uc`7rv@#i>QbF^NeTnZ+5Y*)cAu#n~nK1u^MG csg;Q(`MEI#Mfq8&$t5up6Ga(gCYCD#0A^7cOaK4? diff --git a/q01_grid_search/__init__.pyc b/q01_grid_search/__init__.pyc index 545de0a6bf4229ec79e9955abcfa9b3f3910c30c..5aebdf9b32ea7a5fb5e0988e2688ed621d9cbc46 100644 GIT binary patch delta 124 zcmdnYxPp;``7v@#i>QbF^NeTnZ+5Y*)cAu#n~nK1u^MG ssg;Q(`MEI#Mfq8&$t5up6Ga7M3Jnb7(~B}w;)_!gi;^>9CblaA06{??vj6}9 diff --git a/q01_grid_search/build.py b/q01_grid_search/build.py index 1438657..3706f1e 100644 --- a/q01_grid_search/build.py +++ b/q01_grid_search/build.py @@ -1,7 +1,7 @@ # 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 @@ -12,13 +12,17 @@ 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]} # Write your solution here : +def grid_search(X_train, y_train, model, param_grid, cv=3): + grid = GridSearchCV(estimator=model, param_grid=param_grid, cv=cv) + grid.fit(X_train, y_train) + return grid, grid.cv_results_['params'], grid.cv_results_['mean_test_score'] diff --git a/q01_grid_search/build.pyc b/q01_grid_search/build.pyc index 44702324910e121384c8ce7cd04e864d0d40ac9c..c001fc8ecec0594dbd8333e75009f6412c80282f 100644 GIT binary patch delta 267 zcmaFPd6|oY`78|-v8#(4NGU{($&UlWo-j9KSK|douH&s79wJ0$sB_lsSML#^h zD7&~IF*#K~IX@*;zbG*;B|kSlEx#zWxFo)yC_gJTxkSIvz%V|&C^IF#I5n{-IYU3G zG&3hfub{Go8)zhwggB5}%mySF7^N8n7&SzItP&0&QJz?oH+diP?JOF&0c5^SZhlH> UPO2RyX`7Zhj`CFZ1L}Hy=3=9nV8Tq-X`bn8tnI%TX`sqcfm5C+!xjC6h$n1#; FegG%K6chje diff --git a/q01_grid_search/tests/test_q01_grid_search.pyc b/q01_grid_search/tests/test_q01_grid_search.pyc index 782fd4ff6c7fd093ccb33f34af235222653703d6..dbda13c2f1f8330ceea866306a52d214658cfb33 100644 GIT binary patch delta 436 zcmeCzxuwm{{F#?)@6P!f+3zzeCo?cG=x5~Trs}7s7A5ASWaQ_k=!fSQWfvDDCa3Br z=clAjF64Bb9Kv#+ShbrMvL-TevH}e*DJ{rJoy^7VOQhEL&G*?e8HrK6xsY=mQ3}D1 ukLQ(|e4m|d^IC2fqBU)f=k;SH#wlPMq=koP_T7N7+=nZ+fO|FiiLuNQ3Fd`_v&=h!nDNz=A@J}1dq3b<29 jv}JMux76k^UK3W*95?xs&{2|fxNMdaQ6$xE%SDX=HlnC5 From 17df4d2fdf57d4978884da301784d9631e188d1d Mon Sep 17 00:00:00 2001 From: geraldhood Date: Mon, 4 Jun 2018 08:51:00 +0000 Subject: [PATCH 2/2] Done --- __pycache__/__init__.cpython-36.pyc | Bin 0 -> 148 bytes q02_fit/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 156 bytes q02_fit/__pycache__/build.cpython-36.pyc | Bin 0 -> 1314 bytes q02_fit/build.py | 20 ++++++++++++++---- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 162 bytes .../__pycache__/test_q02_fit.cpython-36.pyc | Bin 0 -> 2650 bytes 6 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 __pycache__/__init__.cpython-36.pyc create mode 100644 q02_fit/__pycache__/__init__.cpython-36.pyc create mode 100644 q02_fit/__pycache__/build.cpython-36.pyc create mode 100644 q02_fit/tests/__pycache__/__init__.cpython-36.pyc create mode 100644 q02_fit/tests/__pycache__/test_q02_fit.cpython-36.pyc diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..aae66ae5cb5730fb119bd74dae1000ec6abc5614 GIT binary patch literal 148 zcmXr!<>hMJIX{X42p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUyk}2`MIh3>8VAD zIVlG0`9;~q1&PV2`pNkzsrp5Uc`5n1@oD)*sl_Gn1x5K;smUe!@$s2?nI-Y@ XdIgoYIBatBQ%ZAE?LbBs12F>tI9nzj literal 0 HcmV?d00001 diff --git a/q02_fit/__pycache__/__init__.cpython-36.pyc b/q02_fit/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3cd54ed32b4e22e6671a01d781a73ed24b269359 GIT binary patch literal 156 zcmXr!<>hMJIX{X42p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CU!M9I`MIh3>8VAD zIVlG0`9;~q1&PV2`pNkzsrp5Uc`5n1@oD)*sl_Gn1x5K;smUe!g$73PX_+PZ f@$s2?nI-Y@dIgoYIBatBQ%ZAE?Lbx(12F>tf?Fuc literal 0 HcmV?d00001 diff --git a/q02_fit/__pycache__/build.cpython-36.pyc b/q02_fit/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..28ca83b044ab0a263468b2a2856e918515b9e6f2 GIT binary patch literal 1314 zcmZux&2D2g6u!QHxi^1J+cZr(&;g_w$R-(z1RDfMgSucb56RS%I6$^wvUg`cYHtUbebRk-T&d&(DVNA z?zINkUqDyCgJ2#*!ovu(FZ?3F0kT*i!Xm;^5#zXM;D*COkrXLTogIm0(ZVg{akOZ& z_!{93?<~3uF?8dDeCx)a`9~h!xre^(kRDI@4)3vqrL1`yz6kLy-oyL2&s(eoSo_w; z2du-oY-b*@9@}Mmp!Zpy^*|p0G5~$}Q-}vV;JbXEAMgPivZLGRMSu_S5FfE)_TWbk zA2al=H#*tCExl(WWLk5XvrKU!>G>!yJzABsrOK-^D~Oi)rRfq%my*y`rf4O(IiP|l zmCtfYv|T27T}cg|dRmga%rsXzQ?wqUgh)rHg> zpchP0%}+N?FgK@GTw3vg6@4orD|`^6(6kG3naw!SONi98%M9YpAp@0ECbe^n*ZSOa zttmK}Wo5;<+5~ntGCqApts~nK=oWqoU3~>Ydm1hLYlN&0*4{O`@^!d~)_`3FYjhRr zcpa{TYyT?Jjja{yWNS6n(K=o?W&zNKo{dry)iN)&2`zEBJ+)9psiy-&$bPNtv4}^!B?hAdVefd6Mn}485OWx>#iEAhVqU1X;G@r~RUjb8v$fx7~J#T#R zlFmw3dJX}Y>LlJNRC{`KUvwLr5d8v3Y z6=H z1usu5+I07D=+<`6(&fl;a!)*Vv3y!oY$^C>_D;(BNKhN~p|^u38lXLY2zKJWu0IU_ E1tDmDZU6uP literal 0 HcmV?d00001 diff --git a/q02_fit/build.py b/q02_fit/build.py index 7a6602b..9bfec2a 100644 --- a/q02_fit/build.py +++ b/q02_fit/build.py @@ -1,3 +1,4 @@ + # Default imports import pandas as pd @@ -13,14 +14,25 @@ X_train, X_test, y_train, y_test = train_test_split(X_bal, y_bal, test_size=0.33, random_state=9) rfc = RandomForestClassifier(oob_score=True, 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]} grid, grid_param, grid_score = grid_search(X_train, y_train, rfc, param_grid, cv=3) # Write your solution here : +def fit(X_test, y_test): + print(grid.best_params_) + predicted = grid.predict(X_test) + predict = pd.DataFrame(predicted) + expected = y_test + + matrix = confusion_matrix(expected, predict) + clr = classification_report(expected, predict) + accuracy = accuracy_score(expected, predict) + + return matrix, clr, accuracy diff --git a/q02_fit/tests/__pycache__/__init__.cpython-36.pyc b/q02_fit/tests/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b8e2900723eb8067f079b6c2e96ed3490d09b576 GIT binary patch literal 162 zcmXr!<>hMJIX{X42p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CU;g?T`MIh3>8VAD zIVlG0`9;~q1&PV2`pNkzsrp5Uc`5n1@oD)*sl_Gn1x5K;smUe!g$73PX_+PZ kB|yPq{rLFIyv&mLc)fzkTO2mI`6;D2sdgZXih-B`0G2c>G5`Po literal 0 HcmV?d00001 diff --git a/q02_fit/tests/__pycache__/test_q02_fit.cpython-36.pyc b/q02_fit/tests/__pycache__/test_q02_fit.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9316b7cc5cde341534da69a64eb9d855c2a1b378 GIT binary patch literal 2650 zcmbtWTW=Fb6yBTd^(Db1!Eu0urG*w($fgugRjLXV0)$jWDj*e&ke12L*x9fbXJ#D5 z7I~-)kNks5eeQE#TB(1dFZOv7LXGb1B5iD??lVs>Q3HnD*>m=ig1ffO`fh>CHElr&$A+_+52 znlD9_xJs&;ccU6vfO&4TNEZ3R&M8(No21U`JExh;+*cORjaOFJS~JMfob-a0Eb}s7 z;>)bcYHZ=P^VA_LlCss^AI zsU<#~I*h4Gg(PL{W4y1n$s)25r(Hiu8J80qXPd+d_5$E$4o-rtiX!U7Fdb7&=y&lRiG`gDwv^`l@R}Xp$ZTTd~i|lUE>aX5>-)#GRNkD z`NG(-l>NeF=9)2vO<;q$|E|?A#@d5nS!Yw=astmix_EaV?4UUFz$Am1C+do9d6(H$ z?|!()6X05oz#WAKvI?f=LfzdR&?vJbp0q5$nMd8sL6iPqh;uOZk4K&DH0GTi7c^qq zY05g^q~f{k(|~sZ0If5%T~|90SU%l>Lv(hpUH8GkI%s66sXrC9`@_uDwuk;EY$5SD zhUuE4`V^z~VfQhxaF_;b1DJWRa;P9Qtr;-(rZ@wmMxV_vVZ2KRk@EIvG~m)>sh6b6 z1D6Q4y`IMB_=uK$gq2u@wOW=~gGQW1g3#pTJa7;j7!{xo_?6xUrAK--PwI6zY^ERT zR)kOMcNG}aPg!H@seND`SO+#Z1-OKAb_&c?#TVcxb8cX5j=nll6r#{m!#?-GB%a_9 z0!gm57fSD0GKl-bcEYF-bolJ5H%tfMFMK*MOnTmB*(&8OQhcJrJu43Lww}Ap1Nk6< zP)!1!74&kXG+i%qaAR;YL@KKWY0~upViE3VwE%OAFL*x{DsyQN3t@BY%+bZSU_CkKKjLf8@U{OZzFkOz>gJ7q##dYbWrT<1B9ixjkkWLj zcpv_zNQz6?eHqCINKSZPV}{uwsv0mHdK|Egw*Wgf;TT$&NVPZO-tY8A8#5rY#}1Z9 zos4>y)_-hN-n_Y$2j9(y^Ujxcy~Eug`XB_4;*TFDE*+epG={?wI@#&m@4k%UROSim z-vQHn8<;%&F~X+dSvN=C-@}p*-)y;=>-!0fx$kEc-;Yx^h>)-OKIYH7N37$qF*}J5 zkziF4A0at1nC37$hz1bMD-vs&Yq}1+MYpKslRx1RZRluiWbPmd6>1`|WMqY{K^QR& z5vj}PP`yOb=85F-R>TFGjeOb@d4_>JM(jU_u9w)Tzzlni((2QtA~q%mOO$B zKm-XLO1Z$BRaOcUEcZ%hM^fxV<)$*T`Yd-}S8&RFDEg$VZvuEHAWj&i0VzE3w`fEP zL*0}hx8Q|Bo0*g#!{|Q`Phg8~Kq`GIXsi!O96Tzi=mTr1CT(X)Vg+F)~t)}%CNjkt@ literal 0 HcmV?d00001