From abf1e6fbe3c2773d8fc9d77af77d5085ba24146c Mon Sep 17 00:00:00 2001 From: akshaylakade Date: Fri, 18 Jan 2019 20:46:59 +0000 Subject: [PATCH 1/5] Done --- __pycache__/__init__.cpython-36.pyc | Bin 154 -> 154 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 178 -> 168 bytes q01_plot_corr/__pycache__/build.cpython-36.pyc | Bin 558 -> 683 bytes q01_plot_corr/build.py | 8 ++++++-- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 167 -> 174 bytes .../test_q01_plot_corr.cpython-36.pyc | Bin 791 -> 1103 bytes 6 files changed, 6 insertions(+), 2 deletions(-) diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index abc397ac59f40d351e1861264050586541adce96..b753bad393a4b8f9247b00d4e653123d7ef02bda 100644 GIT binary patch delta 80 zcmbQmIE#_Pn3tDJ-`Xi=B8P>Ienx(7s(xa2aYkZgPGWXqN~(T%eo=ODL1J>MesVsL ho0ghbQd*Q6U!0ngnp~2ZpBGQAhZ0{{-C94!C< delta 80 zcmbQmIE#_Pn3tC;r0Y!NL=FoZXRDad;?$zzn8c)v%;JpH>=>8S;_Q}$H!;pWtPOp>lIYq V;;_lhPbtkwwPR#pU?>J+1^^QcDS7|^ delta 105 zcmZ3%xQUU&n3tC;r0Y!NL=N-NcxS7a(Bjmh;+VvwjLhPU)a)3S)Z*-t{DPSDqSVU7 zlKkA5f};Ga)Z`Kv9bb}~Tac4jk{VNJU>IMNnwS!wTwE5Pl30=$Uy>i6k`^K=9Ue|k-@Ly(poIJ+4^D*sI~4mGl^_BXDFH22w2jKB zWhHClGH#PH0U}|UifDi`6RC(ratGx^z$cPtd#onsIrGWJHTBB+x?@b#7Sk&`%L+M0kWk39=4coqhjY4|z9ah~#H}Ybc=5^I_hppG%&v$w4l Qy^?2vDI4Zx@QhB`Z|%Ua0RR91 literal 558 zcmZ8f!D`$v5S@`^uj6Dx3pu3FAMj;K=rxo;$f=M*dq`F+EMCh=>}u_;q@~&7y~Mrd zL;69v=$h01LVD?F10__$ym_7{jULD!hQsvf@p1eI0iNL1;>1rW?ID2zg&JyTsb_oj>IIV~>G|njPJ;Ca>gBp5RGlwXCq4EUYPk4;BapW9zt%H^OK9F8gmCFSj-g>!;C4IcgVE?BLpivv zZfy0ll<`=9Heb|6k~!)prggci+9uocqG*lre4(98>~glyt+T{RH!bG*LJsD+v$yRJ z8Q;08_-1`%^5&-WT$ha>6s=y)8!O}0iWSLepG#_xnd(=a=WyimEzy$Du}APbU{ zG0F0~-(ZIH{rqk;ntVSxp8h*DnJp`=MvIk6Nlz&40RbSx1P?H!cux^i-R{WHgxAP~ rd`pJI7+uZicwjPqsV2PBcK7zuSFlflPfq5oTI%v+_!DfHmPUU8ouh^r diff --git a/q01_plot_corr/build.py b/q01_plot_corr/build.py index edc724a..ce7279f 100644 --- a/q01_plot_corr/build.py +++ b/q01_plot_corr/build.py @@ -1,7 +1,8 @@ +# %load q01_plot_corr/build.py # Default imports import pandas as pd from matplotlib.pyplot import yticks, xticks, subplots, set_cmap -plt.switch_backend('agg') +# plt.switch_backend('agg') data = pd.read_csv('data/house_prices_multivariate.csv') @@ -9,8 +10,11 @@ def plot_corr(data, size=11): corr = data.corr() fig, ax = subplots(figsize=(size, size)) - set_cmap("YlOrRd") + set_cmap('YlOrRd') ax.matshow(corr) xticks(range(len(corr.columns)), corr.columns, rotation=90) yticks(range(len(corr.columns)), corr.columns) return ax + + + diff --git a/q01_plot_corr/tests/__pycache__/__init__.cpython-36.pyc b/q01_plot_corr/tests/__pycache__/__init__.cpython-36.pyc index c4bc30d7704db1af3a7d76f564945a76f376cb2d..708db02ccb7548aa72c7d95cd5ffaf4165625d76 100644 GIT binary patch delta 101 zcmZ3^xQ>y-n3tE!$l57pB8Pckw0=f@ZmND_c5y~xWlmytVoIuhcz#iKaY15os(x}l zkeim8SW;S)8eg26lbT$TnV%P5P?VnqWa<|h7{(Xm}m!uY#6zfmylmh_9 CB_v}2 delta 94 zcmZ3-xSWy0n3tDp{>3Yi6FJPiLY%E)LW@(2ienO!GBS%ZQnO=RQj4=o@(W_pi&85S yOY(DL(oz#kN{dqCi&Jw_lS?x5^I{4O4C4!O@=M~A^NWgNN>YnUien~DkOKg3k|a6+ diff --git a/q01_plot_corr/tests/__pycache__/test_q01_plot_corr.cpython-36.pyc b/q01_plot_corr/tests/__pycache__/test_q01_plot_corr.cpython-36.pyc index 40d2b706881e3ab76930c2164e7d4894f4b4633f..be620924de8e1d8e2ddfa9fe33d11865b6f809a6 100644 GIT binary patch literal 1103 zcmaKrTWb_C6vvaf?9Ohx)h90?ItUd8q+9EgC{iq?;KL#+2!jyfB->7#xirZvcBxO> zFXLCrt55qCeDa*xcDpNRhMb(-PX6aN$;-i@zxVpx*N+|{zsO1nz~6^z-h&ZDP(@M- zt*5-gPkl;+F9H=5VH$!@M5sDNH|1iZ7Gn)2}i0F#wiik-1Ge7MM`iUgHIm9EQ zgu3XnH1>cSIft_e4D@PMS(a5=Lucz)+Hs>4*T<%o+4QO4mJd&=#zzrG;lbK0|k#7pd+=pr&fsw8D)Du*AS0wdOJG6laK~cvIP|1gz!!rsyuwaM?>H$=< z2gVXhXY>cXB&VMBFR7pp$qYh5xRw6cyGLdSh(PdQq%oZK!AzeVeuq@76ftDg6tc7? z-WJc}qkJMu@RC4>xER^H4Q`Co_VB#n%K1u`iRS_%)z}5d0T%+x%S!>oetSaREF$zU^_o>wIRtWLolp6|Y3OXx!j6ijQ`+Qd$M;U3`R z?OL`>pbsJp3MO7er_a_%?)+=h8e-hsB7O|cD&hrT5eT?F*Eqw`97)bG_35i6P9et} zE<-%ws*xrZRa{m!F1XE3;^P+X`ig|=I}jo9Z+Yu34tTl;jmD%}ybH4lU3dSlWUeEc zEtp&Ypa5X|zW{FbjFQkrjFr5QjJZBzMI{=A{w8Di!xuApfI9B3i^0@2D$*S=D7QU5 zqEXO}BpYd`=B41qd9`p+Q|1<>YrM`b{MO`3EN)mgFY#&F7D5_n$pwRFYx15VgIV#95NI5{MHAB*Y5O{5)Yi?F)yT(f**KXu#%y1v={YE;&R0!mwQNn1Yb&d+bj7VQ zg>pL0?QI@1JuHUg0?j@_&_qxmf&r?&BO-zbE608ss(pH>lH*wV74~p_j%J@CIO1q% z^#_gudIkg&u*Gr~nFs@X9Mt(lS*wj(nl9*%tuC*A62mdz&$s#8>`E)w87=Xi&Rx;e+0Coh^4}CPhiYw)^2m|48-Eg<|6@;s^zf{N za=LwX)Mt7ey1+qjDQi_}DSaYk)j(GUK9TaKQ{~=c5=_?jascCS7RsEU*)TIs`~TUQ zkL<>J)>t36%B}oRwXLqf$Lpr3{Rj#Z^7>)k8RVXKb>V_A6S9cM#|>U~MG5_+#jsU1 tD9qe~;6^Ku`0{3em-@m7;= Date: Fri, 18 Jan 2019 20:48:36 +0000 Subject: [PATCH 2/5] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 167 -> 174 bytes .../__pycache__/build.cpython-36.pyc | Bin 951 -> 935 bytes q02_best_k_features/build.py | 13 +++++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 173 -> 180 bytes ...est_q02_percentile_k_features.cpython-36.pyc | Bin 0 -> 1967 bytes 5 files changed, 13 insertions(+) create mode 100644 q02_best_k_features/tests/__pycache__/test_q02_percentile_k_features.cpython-36.pyc diff --git a/q02_best_k_features/__pycache__/__init__.cpython-36.pyc b/q02_best_k_features/__pycache__/__init__.cpython-36.pyc index 43047f0b7d121cffd870478bfcf87b31503ee2f1..a88ac05259aed583bcc460d82488126b0bec6ddd 100644 GIT binary patch delta 101 zcmZ3^xQ>y-n3tDJ-`Xi=B8Pckw0=f@ZmND_c5y~xWlmytVoIuhcz#iKaY15os(x}l xkeim8SW;S)8eg26lbT$TnV%P5P?VnqWa<|h7{w>07MH|l$3qnr>rd>I0|3N!Bw+vm delta 94 zcmZ3-xSWy0n3tC;r0Y!NL=JPW5NE5H(Bjmh;+VvwjLhPU)a)3S)Z*-t{DPSDqSVU7 slKkA5wA93s(xTM(;?$hf1jS5VpO)x4H`vkm6cIv&~%uB~gSB6-5;33L*=%a@M|N@4P?QzQ9F$)g=N7 z3JMzDfLC%$b+3>H#v4K+!K^$xp7D&oZ^lmtgXH_O7jM21gnpts;(`4fmVO0_BaS7a zxcd|832)|evc@z3k0--2q7inde6V90gB|mbM;Dm(L{9`fSQGH!2}*k#sD}>DA8}^b z__SVVku|Ewh0e-_G{qTH1v6rl>$4Qw?TL^gH-|#yqB4aP;OkE_B~Fykx~QwoL#UPm z_)a3w0W1ezb5Jds!L^)l?+aOx7VIHfc`cdY&&UwtwV3-5@mqi9x1{yfWEFfwQ_KS% zUc@Gtg%F9>jyO=d^oHmqTH{sNhOmz=$q+e82eda~QXD!O8w}T`nELEPq2Zr2f3fE- z8SPqJ0Q13AFtbo1t5_*?7rr`z z9+qOv=K7Q^C7UxY#;}Lerq(^$glNez*H1I~Lkx^X$(dJw9F( zl8>6@Rk9}wZSuNo_8ms;P>1L|y(M%fZL}xroJqY8#!c47jbrl*B#o)hRo&PqujQhw zv~tCi8xtK&3zHeeDm|@LX-U=4h^Z4@D?=ll*D&ZTjjZq9i^X$`k1SqVGSxIV$|~`m z-oJsK9WS%%gzL^>)pNHbpzO|nQEx#=JB9ETj&X?l@IA(A2RtcOZboTBgKAMWOLY%+ zHf&hMnYN_iHdcc13?8c5h7cXHYo6!&vJFHJ=SEXM#sNR_gjD#3U;Ngc!j16nz>~^j&5%=Nw{-Sz{7;KM+eI&^u#Z@JzkrBIA|H3yy2yG!c9zxRiNa z?PrdGV%xgz<~;ccO>@@TjLdr?tZYSAc1w<7O;%3pT#`OnxvkSu96d!_yS3JI<+uK^ z)w->>Mn=lUnX`uXpj_oC{}R^tUBDC=FnaDYi`gG6Mq2BgiPF0uxZ^PQ+;4l&$Qo8b z8;l8bpX!~#A*tvA=4`Ut&j9(EW=0f@+`%q=G?%1BatMO`FGc{!(YP|JF<)UL;OfC( zaCEZwB$;rjl6f-asaoRZ(PWtyY_MpwKP=L6!qQRS1jSBHAKm~DhDDvFg&d)?!M=*9 zw&uLip5Sk|ko*rtL(d%CQM`-J3@N@2SAbNZPd?HUdrUfNoxwPCuqRAaka@5WoaLFS z#fH7`aQ!M67P(YeT`orVa4yXeE;)VlAC|xIQ6Nl#wVl|N}pGZzm0b`lN*UfvhOxJ_+vK^TSbHbi#Zm-B+Bq8eP+Jdxewz*o=-(FxPR|5jt;8PV}tU^>f! Nk4$N#sb~nH^$W>S=m!7* diff --git a/q02_best_k_features/build.py b/q02_best_k_features/build.py index 9b1046a..b0c7743 100644 --- a/q02_best_k_features/build.py +++ b/q02_best_k_features/build.py @@ -1,4 +1,6 @@ +# %load q02_best_k_features/build.py # Default imports +import numpy as np import pandas as pd @@ -9,4 +11,15 @@ # Write your solution here: +def percentile_k_features(data,k=20): + X = data.drop('SalePrice',axis=1) + y = data['SalePrice'] + feature_names = X.columns + fs = SelectPercentile(f_regression, percentile=k) + X_new = fs.fit_transform(X, y) + features_by_scores = [feature_names[i] for i in np.argsort(fs.scores_)[::-1]] + return features_by_scores[:7] +percentile_k_features(data,20) + + diff --git a/q02_best_k_features/tests/__pycache__/__init__.cpython-36.pyc b/q02_best_k_features/tests/__pycache__/__init__.cpython-36.pyc index 86a25cff523fa394416e407b58545caf2749163a..842cb9378d6da42472e8e19cd2c74e978c6db34d 100644 GIT binary patch delta 107 zcmZ3>xP_6!n3tDJ-`Xi=B8Pc+qJBnxZmND_c5y~xWlmytVoIuhcz#iKaY15os(x}l zkeim8SW;S)8eg26lbT$TnV%P5P?VnqWa<|h7{w>07MH|l$3qnr>z4re#rhNbQ4Zyt*=}dv(t_y!>u3=nn7g{kr25@+Vol+TicP z&>RdWoJx|@m{P(W?n)E(Xx*S;@Xaa*)c0^VBCxWn5#;2qxOJ>KVoNjvTe zDmpOJJ0yIAZ@wXXQ@9H^?sNYciMGxiNEK0gb1GCS3X@5ZoF-$zOr?ZAhe@0bo(paE znHJ!0OoSO%QZhBsQ<0A5pL1r|@VKnBNTw=Fg--HHnry~Y#*ElW^(^lFI1`FV`E$i& z+&NTFv)Mx>Slm5iicQ2mQ~JWM|L;974U>C1H_r~@;9G4Dq(bii67Ml{oZ^RFTv);` z4809TkeG53JDhUo4T)Xuau4nv_jwEMJ^}>y7Vkj$U3(iV`{}ycQwq`W!teo%eHi*K z7()zQ(AV@8IdP2pigJ3JEFc}ET6-Qlx5xtdB9O=%DHq;U7<2yFcO(Veggt>F=VIu zn4L*>%D5Q*QmRuuWvLjZB|I)kP2gq7o|Of#Ri1!5eEH4Y1*Y& zGd;6k;==2vlT~^6iP{50oPf?Byc6@C{}Sv9F&MNa=2LLiiD_uz9tW{6N$^MKNW%F? zVCLViNZ?}3K(FD9$x7&umtj$wFlQz`4ktAwS64(-Z9;^|y<|z@&W#+^ft%{0!HOHx z2hV=-p2C*VH3n@!q5#ql9|Y1xtQAHmxE72WqffvA(Sm#p><{CjjMqf!jOP27sKBNU z&Dm6h<5Go6KtCuNh{8;VFP>)Fyx0!U$_hj*mh)LL3Ge90vs;a5pXeurHmpd6?VEDC zYAe>0@VfOdJfK;l_7-4YzX!19W0Gtc8|l~8g zqZM#iT3C(&D`A~R6t!)TBn8VwlGtvN&2EnesS*Q-vpR Date: Fri, 18 Jan 2019 22:03:02 +0000 Subject: [PATCH 3/5] Done --- q03_rf_rfe/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 165 bytes q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 0 -> 680 bytes q03_rf_rfe/build.py | 10 ++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 171 bytes .../__pycache__/test_q03_rf_rfe.cpython-36.pyc | Bin 0 -> 1866 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 176 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 712 bytes q04_select_from_model/build.py | 11 +++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 182 bytes .../test_q04_select_from_model.cpython-36.pyc | Bin 0 -> 2086 bytes 10 files changed, 21 insertions(+) create mode 100644 q03_rf_rfe/__pycache__/__init__.cpython-36.pyc create mode 100644 q03_rf_rfe/__pycache__/build.cpython-36.pyc create mode 100644 q03_rf_rfe/tests/__pycache__/__init__.cpython-36.pyc create mode 100644 q03_rf_rfe/tests/__pycache__/test_q03_rf_rfe.cpython-36.pyc create mode 100644 q04_select_from_model/__pycache__/__init__.cpython-36.pyc create mode 100644 q04_select_from_model/__pycache__/build.cpython-36.pyc create mode 100644 q04_select_from_model/tests/__pycache__/__init__.cpython-36.pyc create mode 100644 q04_select_from_model/tests/__pycache__/test_q04_select_from_model.cpython-36.pyc diff --git a/q03_rf_rfe/__pycache__/__init__.cpython-36.pyc b/q03_rf_rfe/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..5b0f2ba74059e6fb48b7f143b663583033b82a1c GIT binary patch literal 165 zcmXr!<>k`1c8XyDg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SCD>2er~FMVs>#x zVr5QZc4A7Zet3RSc5y*sa;koEK9HN1npjd=lp0^0nv~v1!U?M8W_hH kr2$c@etdjpUS>&ryk0@&Ee@O9{FKt1R6CGe#X!se0B@HoLI3~& literal 0 HcmV?d00001 diff --git a/q03_rf_rfe/__pycache__/build.cpython-36.pyc b/q03_rf_rfe/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..caa96519dd842f5d7eddcbdfa4c4f3ce0ab7cc3d GIT binary patch literal 680 zcmZWmO=}cE5bc_;orH}>l)&Q6+gx^pfG3e)Feh0hIVg=Vbf#;_?Dl-v-4k4yJ*`)N zh<~ZCp7t+zvU(FCU^Dfmx~jVR)$7xvqeFcE_DdQt_M1Iev}b2z<`sct5)|Wrunc6d z1s+l)R8bT27<@KTNi*RS@?)9&U_6y@#j?qc&a%b#7gAV}-*kh)qStkarf3Fb>sz5~ zVR2rX+YDTIdGU^ZCzqm?U31ZCH1=ExW9q6#U4rjLD<+G`&dJPzU}Q_8Cj%M&3^p*5 zKVzG~!j^498;qe1M_5K%kkNCZM>WwHE#nc!U`xJDe3l}U8QXf&$$}qT356d$(Vf4Q zNJZjXZFXLh4EVFQs8HB}2o|<03@R*bmbysluGb+IXRy^7bWH;)#vxj?pf7cONw_(BA9=Dd0Oa-KFqI&TFH68cFA2}O3jT229F?x1WsTI z`U&l`1DEu~N*EXP(xn=OEa<(oujVteQYdsg|L@kl0{r-29$SOWwZc1feB=E<58#+$ WE`3ci4+`IS5lu>v28Y2ErqN&Nc(>UA literal 0 HcmV?d00001 diff --git a/q03_rf_rfe/build.py b/q03_rf_rfe/build.py index e8a8d20..5753af7 100644 --- a/q03_rf_rfe/build.py +++ b/q03_rf_rfe/build.py @@ -1,3 +1,4 @@ +# %load q03_rf_rfe/build.py # Default imports import pandas as pd @@ -8,4 +9,13 @@ # Your solution code here +def rf_rfe(data): + X = data.drop('SalePrice',axis=1) + y = data['SalePrice'] + random_forest_model = RandomForestClassifier() + rfe = RFE(random_forest_model,n_features_to_select=len(X.columns)/2) + rfe = rfe.fit(X,y) + return list(X.columns[rfe.support_]) + + diff --git a/q03_rf_rfe/tests/__pycache__/__init__.cpython-36.pyc b/q03_rf_rfe/tests/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..cea39aec35894b337b5c933c0333acf697affd96 GIT binary patch literal 171 zcmXr!<>k`1c8XyDg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SA>2>er~FMVs>#x zVr5QZc4A7Zet3RSc5y*sa;koEK9HN1npjd=lp0^0nv~v1!U?M8W_hH qr2$c@eo1O^NwI!>d}dx|NqoFsLFFwDo80`A(wtN~kd4Ja%m4tAb}gy^ literal 0 HcmV?d00001 diff --git a/q03_rf_rfe/tests/__pycache__/test_q03_rf_rfe.cpython-36.pyc b/q03_rf_rfe/tests/__pycache__/test_q03_rf_rfe.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..865408e224ab38d80fc471df9c4c4c483f02f583 GIT binary patch literal 1866 zcmaJ?-*4MC5GEzrmSrbPx+YyZY!!xefPo-h+oxf}&?Iew0$DaBU5f|hLtei8ars>&d5M<-@4N{{y*1x@mQ zPy5GvLF;8^L`;3`xR12iixqi~Q>eV=zB-6TWr{Y&9wmDFbhNJkOBV{4aiVr`Ua#s@ zGri6-cqV%nl>XPDOn=K%?+iQj6Lp-$&?9g@UIfcieDo$7S&|i4z`^>!0-MOf)`1$- zv8@p`*w&$mAbW*J;2xED_Balwi}Jbn?Bb&zqcP0z3ICJ7XXlo&-*ey_Y=ZeQ_d>sK zt+NTqgJEXpP*J)oGUEr&-yu6jf{#SyiA;_5AHt@;AB|*+UdK@=LZ%!vMN4Qcm3jU) z7ja?7GVNG}qh;JL9HRLzrrH?xPlz-pvMVn1nYfI_g#g)oov8~w6g}DPW!UXYVR9uy z9E`I^S&Ev-&e83@{r(9mh(y#iSidf9IDfk}ye!t}%QPySt$PXQ*0fG$yL{}=(c8K) z{2Hb-ti<$dbQUqK5Tz|P!_PjvvN3A>!wfo*eSuo`MUhUzJp(?S~=GG;FelHM$bwm%Io-)rQSyeWrG4T zC`n_JkQQWO9gcVB72@Xg&E-(~{Y?2vB6(?5t{-Xt%|WEin@#^R%TY#h`aMbq{zKhy zij_(>FZ7F48>4IB`U%%LCNs(ri)S+|XtjRU$MW&yI*m)h(ab5YX2LD?pGYL0=vFjM;mYaO zyQS!j8;Y(J_7x7-bQCZ?{`UXNtp*%+8igB%sYqlP7G4!BV695+w%A_-X3?Ye*rcV B_5c6? literal 0 HcmV?d00001 diff --git a/q04_select_from_model/__pycache__/__init__.cpython-36.pyc b/q04_select_from_model/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..c74393b91b71a952b8d681b37c93b5b649b9ff50 GIT binary patch literal 176 zcmXr!<>k`1c8XyDg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SFC#x zVr5QZc4A7Zet3RSc5y*sa;koEK9HN1npjd=lp0^0nv~v1!U?M8kj&u p!b5iX<))oUX0|1!6FWmqD literal 0 HcmV?d00001 diff --git a/q04_select_from_model/__pycache__/build.cpython-36.pyc b/q04_select_from_model/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d4eb81cb756d665860e811e95cd2d30c1f5cdd52 GIT binary patch literal 712 zcmZXR!H&}~5Qc3hY18g@7lee=E4N-6Bse03x>8TDLi7N#kRoq9VbeNsu$>h}=_y=! z5MGC)ublQ3I59~_{X4mK>kyMeAa!UJ{ zDOLtN7~(*MJi=U{Mtls>HkM&W`9wx?^o{T-OkvXXRl$ZV#`oBZEU3TSfP&1ejV|A4 z2?|q>--$}>QLeZXrVtL6nZ3(s-xp7W z7NT9D*%i8$Y;knSWbmCGXp8Zj9GIgWIRuWiK}Qc^8*YP^wya~6xUi+$2s5LO%t=Ra z=!52ewy2{37TV0@MrE_Fs!HrJ-~p(?EN<4mijtSmqK z1TM8rU2EeO5fA zdu?{M78xWNexKwZTw@@$1KdJa$V+dLbMpD=^S{|NN9M=&$xTxzxvcm8;j!Z6?Hna- z?+Cr1F&&|uQ*(*;#TlR5odRL1<$r=l2oL_fLuH}7Q7{1VqZ(Hf*0WmrsA@_SW>xKD o145?w7tI9Q4;sV9C+-3teEb5TGzwn!w1?Twai*BYY#PSnKa8%$WB>pF literal 0 HcmV?d00001 diff --git a/q04_select_from_model/build.py b/q04_select_from_model/build.py index 12dd1df..272968f 100644 --- a/q04_select_from_model/build.py +++ b/q04_select_from_model/build.py @@ -1,3 +1,4 @@ +# %load q04_select_from_model/build.py # Default imports from sklearn.feature_selection import SelectFromModel from sklearn.ensemble import RandomForestClassifier @@ -8,3 +9,13 @@ # Your solution code here +def select_from_model(data): + X = data.drop('SalePrice',axis=1) + y = data['SalePrice'] + random_forest_model = RandomForestClassifier() + slf = SelectFromModel(random_forest_model) + slf.fit_transform(X,y) + return list(X.columns[slf.get_support()]) +select_from_model(data) + + diff --git a/q04_select_from_model/tests/__pycache__/__init__.cpython-36.pyc b/q04_select_from_model/tests/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..327730e2db9559d68d75868204f63aec45f50d50 GIT binary patch literal 182 zcmXr!<>k`1c8XyDg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SF(Oaer~FMVs>#x zVr5QZc4A7Zet3RSc5y*sa;koEK9HN1npjd=lp0^0nv~v1!U?M8kj&u vt*Mc%d literal 0 HcmV?d00001 diff --git a/q04_select_from_model/tests/__pycache__/test_q04_select_from_model.cpython-36.pyc b/q04_select_from_model/tests/__pycache__/test_q04_select_from_model.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b7255f887b7b4d49a21e9ea6f8322228b9aa6365 GIT binary patch literal 2086 zcmbVNOK;pZ5GEzz)iRXOK^KQ@6XDHY~z1(+YFXrv^CG=n^jg&OLS49A~>Frv4g zA$3d{+8cZ{TLf?aGNK_zPxO#$7uzN_{Q!kwhEMqK z{4G1MjQy4aUttqm3YR%I9#~6kViQwv5ocGCyAu-Q)u+E6=`{g&oVZYZVTre^5A-=s%g7L9@SeOmrf9;!y94<5(OD zki8d~I@BW(%3g>R=?$bXxspM}ohVC@71;r9r1$3Dm#4Gm7}Ya~iY{evrNR2>xbVp6 z!+(QmU~{-RO@T1m<>RlfM0)+doLoo+IV)4~2`cAPQ6+*7>=br;_ryl4@i$Y%K@J2S z0`Ew~xzrwHUYZ#%5hmRCh9&+NExPtuE)<=XuBF=8sSXK(z7n&j6|2_-a_UmwM577} zj$nNCQDD6HF~x$Ygr%&);tncEM7T#e7A_XZl&HjYvaTELMDy5R`@Gbu4w^#OS1O zXpt_j@VW%m=hr}0Z6}CMy{`~r6eUB%EIxktQJ7tFb^*F6jTSFJH>D0j_GAhfh2v!d zLfaYmhLB|Om|SR#RlHtGh7!j-2d{~A<2`*&0-(ypQ>O+|_E@wfj6kIKz% zw^6u3kcvbGLD3569?4_UJ3&Czruw4j1gixSOC**_oF%i=i2SO7f)q`)(&cUq-+DRQ zUGQsZo?yAK(ve>ui4=q`tPvD$o<@dZRuoTBdyUr(RCTX`6rd_u9zWm38wmouu?mN7 vwW6-jNtRG0l%Q_o&n3X+a#!uHa35CTeNV?mQzW=W-l5lOp`67RXRLn!%|T1o literal 0 HcmV?d00001 From 18ce41f837bdac2d29fa940fcc11d2b6f4aff0db Mon Sep 17 00:00:00 2001 From: akshaylakade Date: Fri, 18 Jan 2019 22:09:01 +0000 Subject: [PATCH 4/5] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 175 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 1174 bytes q05_forward_selected/build.py | 40 ++++++++++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 181 bytes .../test_q05_forward_selected.cpython-36.pyc | Bin 0 -> 2853 bytes 5 files changed, 40 insertions(+) create mode 100644 q05_forward_selected/__pycache__/__init__.cpython-36.pyc create mode 100644 q05_forward_selected/__pycache__/build.cpython-36.pyc create mode 100644 q05_forward_selected/tests/__pycache__/__init__.cpython-36.pyc create mode 100644 q05_forward_selected/tests/__pycache__/test_q05_forward_selected.cpython-36.pyc diff --git a/q05_forward_selected/__pycache__/__init__.cpython-36.pyc b/q05_forward_selected/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a1e0ea9162f48895adfef95298586a557f3f47ec GIT binary patch literal 175 zcmXr!<>k`1c8XyDg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SB!o}er~FMVs>#x zVr5QZc4A7Zet3RSc5y*sa;koEK9HN1npjd=lp0^0nv~v1!U?M8kokX q+Zpf7g- literal 0 HcmV?d00001 diff --git a/q05_forward_selected/__pycache__/build.cpython-36.pyc b/q05_forward_selected/__pycache__/build.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..508cd3d15896529c588d27480e09ffbfdf39dbe2 GIT binary patch literal 1174 zcmZ8g&2H2%5VoD)&8FKeLO^eb+g`c|#08-W0pf(J3J!n;icIV-$vQu^v!#oi({e@P zHFzaoIq?RF6XUQg6^T3^&y4-ecs}3X*-4tCC-1xvp&#hV=YjqhhCTwp5yuiy3^S3W z@~DTM&69o=&|uK93~3~A8FPPw=}34RL=ztH@C%}2F%~0{YzRc+S7;Xfgfr364BP38 zq83cO6bmJ^E}9x_vAUP(yiwxw9nLy7|Jbaw$XZq8LTA-VcEuS}1?$8?uFrDfj)HF& z2GoF_!qA5pa>hO3r1v^xP>H$63HQH}l5BAAFHj%A2s^LzH>i)cb8MidebkT6e}OkS zFT0=%4b-#2&(M3?j}0=u8Sf*ANliTLi%ewF1t7W8`^dlzfMw)r1$|^9z}qoNnRH__ zGCLc<2ansEmS6|(aOv60(nISvNAqI@0!U5JM2p|@Razf zZ<_@&L77~&511j?yg~EJ>Hpr-!(()M2zdl1JR#7d;7GwGqMuIC(JLm!vFpGLQ=gp| zdbVeMS?G@XTs5tY@s9QWhDC zccgAY=D*(pO)D{HOZ}0pC0jBs=C2#I)Gf=!Jco4WTl6gqa2?KSO2}+}diOzg(x^{N z@yjIUA6A9r2kqKU|94FQP(K8Lun+(BLB`nq1oUe--O2<{L7RX*f%!JR1+fXfK|-wd zVfQSxVasaHw2EM9uj{3R$5W^ZVkbY;OvzYhpy||)f3~Cq%Khs`tj{QU(z|^ literal 0 HcmV?d00001 diff --git a/q05_forward_selected/build.py b/q05_forward_selected/build.py index 8816abd..c0b9d04 100644 --- a/q05_forward_selected/build.py +++ b/q05_forward_selected/build.py @@ -1,10 +1,50 @@ +# %load q05_forward_selected/build.py # Default imports import pandas as pd from sklearn.linear_model import LinearRegression +from sklearn.metrics import r2_score +import numpy as np data = pd.read_csv('data/house_prices_multivariate.csv') model = LinearRegression() # Your solution code here +def forward_selected(data,model): + old_r2_score = 0 + new_r2_score = 1 + features = list(data.drop('SalePrice',axis=1).columns) + selected_features = [] + r2_score_features = [] + X_selected = pd.DataFrame() + result = pd.DataFrame() + y = data['SalePrice'] + while(True): + scores = [] + for i in range(len(features)): + X = data[features[i]] + X_selected = result + X_selected = pd.concat([X_selected,X], axis=1) + model.fit(X_selected,y) + y_pred = model.predict(X_selected) + scores.append(r2_score(y,y_pred)) + X_selected = result + np_scores = np.array(scores) + new_r2_score = np_scores.max() + if(new_r2_score>old_r2_score): + old_r2_score=new_r2_score + result = pd.concat([result,data[features[np.argmax(np_scores)]]], axis=1) + data = data.drop(features[np.argmax(np_scores)],axis = 1) + selected_features.append(features[np.argmax(np_scores)]) + r2_score_features.append(new_r2_score) + features.remove(features[np.argmax(np_scores)]) + else: + break + return selected_features,r2_score_features + +forward_selected(data,model) + + + + diff --git a/q05_forward_selected/tests/__pycache__/__init__.cpython-36.pyc b/q05_forward_selected/tests/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d0b8302c9bab1943b33477ece7f8b970180cf936 GIT binary patch literal 181 zcmXr!<>k`1c8XyDg2x~N1{i@12OutH0TL+;!3>&=ek&P@K*9*(SCW24er~FMVs>#x zVr5QZc4A7Zet3RSc5y*sa;koEK9HN1npjd=lp0^0nv~v1!U?M8kokX wHcdZCS1lD7wQwlI3RJL9C|=-=0k9bS_z2@2ecO|Rifk{Kmsnjx0^Ugn-)bNvDUtM-kEtb z^LxMd-W)F$^VOG5UtBU3<({(c$)kP>U-=aZP(bySrfRFI0vhPP*3@ksbp;IHXlCq8 zqG$YUGiT=#J?ooxANFVcyxq_H<_eJOs&L?1nwC7xv+d?R>B|W@t)*Ct&1;0wY}Q z>h=!E&MKAt%ea4~qQ>SMTt*X2@?|akP_BpK8WZ41?sGTdfP+d69@X2v&qPDExQk!P z(_X-tIL{k`OX-Ed%;EuH5vyJa+mbsi;kjHo&9)zT9VR>$@ljWH?Ecp}Trl5%z0G{P zZ%RyiopHgLoj)y`(WDp5PLA36DJEEhPcR|v!Yf|nUg5#`<<69_%`q8G`eJs{F1(d2 z-V9+Jz|KvFQEKK@Cf^K1s$U30IK$of*~w+{T4U+GZ-##S>0YgIXX)FoKmPvLT4TCe z{%hpB`?bc)@87ypYyDPhd~|bm?&mL1`Tdh0Zr;9&%9o$t|KshKc{3DM+LHZQNR1)t3`;MEJEn3pZ)@~Ru+ z-#TYeTksXWA(fCl;T&$HdiCgY&Vy{MMu>?_q_bK7Xlo(fPh%dM>GV#u6L%)*6pCi5 zi_dO`^5{R9*x&^+m3UzUmGxdoeSo2;^$^!*mJ_gF=z$Hq&M;1_4)fbwS`b=67+Fn* z#J3s=^czQ1^ffn#K3uV)iGFNEfdrwRiV|w^$mZu*u_*WAm=p;WkvP5uBvvi-fFK@a z@lAl(g9_3R2^k^zBb|u3j&|D2;>6ndF>P4ULW^7IYfEq>Ly&@DdD6Nx?aAoUVQV35 zBQ5z#zZW#DL$YGT<&=i!TtY2HrUC5=_@Ns@@ko}69;`9JSPi+oSx)H}) zvFnUkcqU0FR1hmoT|BV`v>r0{|H3A=;VI($WeOANhJuSB{2+Fq_;(;3dlF6jS0EkR z08%f=Xzy#>>ID{Z>PU}My;#D4T8pOC3z*-M?us4{r0gMzrHL#Xg)L|7Xk6ecsnEgd z^$18RkL69e0|)Jm9esvCp>(aNizm0vn)RkOKtkC#3Ad+FNg<)k-&N;~E`}cJnN+9x z(>3SPmcibz+(YS ztRBIQt|IsR){#qW%vAbf({TdUZJ+dl<52lZd&B^)B?d_hlh{RKABlq` z){;h|QF0YjeQB(u%xkKqVP^2nntIYx8IH|%;6-#wLEeuum)o8XY5mM$VxelAyTML59jBVn*2^_ps#Rgrx;!HY+GP>AK zf~uULL@W-Fut?C3H#@LXD6&Eh{z&1)sKfHgC#=CS=7S^6|Y literal 0 HcmV?d00001 From 0d01a6d870de83e3afe216e6cd14e881089a3d34 Mon Sep 17 00:00:00 2001 From: akshaylakade Date: Sat, 19 Jan 2019 00:02:32 +0000 Subject: [PATCH 5/5] Done --- q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 680 -> 680 bytes q03_rf_rfe/build.py | 1 - 2 files changed, 1 deletion(-) diff --git a/q03_rf_rfe/__pycache__/build.cpython-36.pyc b/q03_rf_rfe/__pycache__/build.cpython-36.pyc index caa96519dd842f5d7eddcbdfa4c4f3ce0ab7cc3d..434438ce046bf7206c2821902723147529e77482 100644 GIT binary patch delta 18 ZcmZ3%x`LI{n3tD}HPb1EeIw_5CIBZ>1StRj delta 18 ZcmZ3%x`LI{n3tC;)yFA@V