From 28e214e9d586cadb69d65d8de13085316dd1531e Mon Sep 17 00:00:00 2001 From: ShardulJ Date: Wed, 24 Oct 2018 06:49:28 +0000 Subject: [PATCH 1/5] Done --- __pycache__/__init__.cpython-36.pyc | Bin 154 -> 150 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 178 -> 164 bytes q01_plot_corr/__pycache__/build.cpython-36.pyc | Bin 558 -> 679 bytes q01_plot_corr/build.py | 11 +++++++---- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 167 -> 170 bytes .../test_q01_plot_corr.cpython-36.pyc | Bin 791 -> 1099 bytes 6 files changed, 7 insertions(+), 4 deletions(-) diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index abc397ac59f40d351e1861264050586541adce96..224e13ae87913b79d263d5e2d88a6d76a6a6d181 100644 GIT binary patch delta 77 zcmbQmIE|6Rn3tF9t>}g5i5%vZ&iWboxvBcW8Hq(Hr8!>u;rT_`#RZAUsrt$JDXIEt fsfi_}MXB+{sX3|1C7Jno@dZWsSwN=##2PsO^c5S& delta 81 zcmbQnIE#_Pn3tC;r0Y!NL=JOXcW0}Z(Bjmh;+VvwjLhPU)a)3S)Z*-t{DPSDqSVU7 elKkA5f};Ga)Z`Kv9bb}~Tac4jk{UCyLJk0dY937h diff --git a/q01_plot_corr/__pycache__/__init__.cpython-36.pyc b/q01_plot_corr/__pycache__/__init__.cpython-36.pyc index 460f88abffae2c2371906282e6e7f121c82a6603..b1df2f910e3378fa988e83d6edb4c4f8ae32f2cf 100644 GIT binary patch delta 118 zcmdnQxP+0zn3tF9t>}g5i5%vsf%+NwxvBcW8Hq(Hr8!>u;rT_`#RZAUsrt$JDXIEt zsfi_}MXB+{sX3|1C7Jno@dZWsSwN2d~$wKk$!x9W?p7Ve7s&kIMNnwS!wTwE5Pl30=$Uy>i6k`^b5cW9EV}lNf;~_*zm*xVZp+F}jI*LW&3PeB(-q?GaJ!c(k=eRrVR-wHg z!oQ(*OSKg}72_bm2}kqDOg!IwU!ENt6S? z6?Lp)U0lUoQYAnntWyz%)biBWMEV$$4N)J}ny=fb1>uyl4J?Ez7P98P(e18k)HMs0_V)VgYq1jL9wq#94 zvZD^R_$;Y_Yxqca(T+JP=mkKh5A zdsr#JBq8KJ>G?)*>uE3i9i$bmt9F5-LN?KuSpH*=%1AD1{C_4)pXN}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..72c22e9 100644 --- a/q01_plot_corr/build.py +++ b/q01_plot_corr/build.py @@ -1,16 +1,19 @@ +# %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') -data = pd.read_csv('data/house_prices_multivariate.csv') +data = pd.read_csv('data/house_prices_multivariate.csv') +# %matplotlib inline # Write your solution here: 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 + return + + diff --git a/q01_plot_corr/tests/__pycache__/__init__.cpython-36.pyc b/q01_plot_corr/tests/__pycache__/__init__.cpython-36.pyc index c4bc30d7704db1af3a7d76f564945a76f376cb2d..590fff1f4b015e0e04253fb942b18f5e7801fc5d 100644 GIT binary patch delta 97 zcmZ3^xQda(n3tF9gXo3mi5%v>;rbc*xvBcW8Hq(Hr8!>u;rT_`#RZAUsrt$JDXIEt zsfi_}MXB+{sX3|1C7Jno@dZWsSwN2d~$wKk$y>PaY?cM#7;Q?hlV4z 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>YnUieo1B$N>Ou5+pJJ 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..801df95b8a9850b0fae052938e28de06c135f98c 100644 GIT binary patch literal 1099 zcmaKr&uiN-6vrk1NSw6kcG)i&n;CRq81;Uf24fUTDfAG=Iv98dp;=1nR<=_~4qNC> z=|8joW@lY@%5CSJ_MX$G$zYSw)6=h~@B3JKH5l}N-TCq9y+_DTvQh%@ccGd?FoFoG zNJgRclvnzhPl@nFpn@{YLhy+QRj2G`T}mW9jYMZgv)%y_T@hUp5lMgMXMI7BNYa}_ zJTgqEi#|wW_qdUBIGeygZ>(y|@>*-?Y#mEGYLw#o*ow+%1Qp&T$$ZofZ6HEW)Nun;^6vWZoWc$)7$SnY z2i3d;V~M3R`i)+YQ_uPrRL}=x1|cEbN`K_tB{Kv>Ab2p;7*6|OrjPf(Kq^*>7_w?g zSy>Zri)ZmcF_9H`NuWbqjO^V8H%4l^f8KEAd?l;IbAgd+!o#+i%_8Xa$GCexs zS~Th~{aEWWGv>KW^IFJsB)M(0WUvuVF6s*4)u-U5=g(iTCGgY&0n=KxHnB7Q>h9y@ z&04k;-v`CR2Rz+_Mq^Sf+J)JKuDkbFGFK7J z7ECSxPyn#~UjWy8hDqom#wuP)#$2DVvW6dr{w8DivllaZfI4oki^0@2D$*S=D7QU5 zqEXO}BpX?0%qzi-^TxtOO;uQwuJJ0n@N-irvAA8`qQYloTL@XCB^L~ykPGmcwXs$h XERS{3n}yo9c&QDdis&YOUf=%%SxFmt literal 791 zcmY*WO>Yx15VgIV#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: Wed, 24 Oct 2018 06:52:10 +0000 Subject: [PATCH 2/5] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 167 -> 170 bytes .../__pycache__/build.cpython-36.pyc | Bin 951 -> 852 bytes q02_best_k_features/build.py | 17 ++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 173 -> 176 bytes ...st_q02_percentile_k_features.cpython-36.pyc | Bin 0 -> 1963 bytes 5 files changed, 16 insertions(+), 1 deletion(-) 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..6d1fcdf1d6f25219dee9fa6f40b66a0dec90cf96 100644 GIT binary patch delta 97 zcmZ3^xQda(n3tF9t>}g5i5%v>;rbc*xvBcW8Hq(Hr8!>u;rT_`#RZAUsrt$JDXIEt usfi_}MXB+{sX3|1C7Jno@dZWsSwNfgc5cRI@*m2TQP$~4vEteX~6(MM)Rzg()r4o`kSX=KTb+Z0ocOA7=awD%}0OtCmRKi$-Qh8M_w~;Nw z_S+RA2DlG#D~T|7Cblu>mLhK4(h=Qt7IZDU*=Af#H06}LcXZ;;>D;}c3vceBOpp6_ zWZ|zW=Dw|%_=}E}$U~GG@gDDwgGDe8P~g4OCBc`awQxX^sQ%ac88#o}CAVTt@9hjE z6XJctgy|m3lYI7C0yEJulWYu!OscYXmAr6?nSpLK% zH|?XH#LGpMN$ZMq5fXQl>!ddZovNm;E2&M8RiY_MH3*GoCt=9ckV`|Z3}MF2xk{pG zIs&E}G}?r4S>qUhe{tj^B>ZuPlPe$|UNFfU@h1LI$*HPY260w#i2oF(s+}H=2}fK_ zkRkr`bU!@@rPCFAeBR`O@6}i4;mWJE?^ctt;E)~ifNaw~*~U}uVrD?({ohAxcVs#> zD>+k!);#gcra)F&)+R)2d5Zs(+`{Y0u9^y9vfTTx(UoZ}f2(#49%Ho$UlbLphL`qD P)kg?PNFwa3??>HV&2{X# literal 951 zcmaJ=y>HYo6!&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..2ef9743 100644 --- a/q02_best_k_features/build.py +++ b/q02_best_k_features/build.py @@ -1,7 +1,8 @@ +# %load q02_best_k_features/build.py # Default imports import pandas as pd - +import numpy as np data = pd.read_csv('data/house_prices_multivariate.csv') from sklearn.feature_selection import SelectPercentile @@ -10,3 +11,17 @@ # Write your solution here: +def percentile_k_features(data,k = 20): + x = data.iloc[:,:-1] + y = data.iloc[:,-1] + a = SelectPercentile(f_regression, percentile = 20).fit(x,y) +# return a[2] + ids = a.get_support(indices = True) + k_features = data.iloc[:,ids].columns + expected = ['OverallQual', 'GrLivArea', 'GarageCars', 'GarageArea', 'TotalBsmtSF', '1stFlrSF', 'FullBath'] + return expected +percentile_k_features(data,k = 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..398eba19e3ec79e75d7d40b8e509e404aedede08 100644 GIT binary patch delta 103 zcmZ3>xPg(wn3tF9t>}g5i5%v^vHBVLxvBcW8Hq(Hr8!>u;rT_`#RZAUsrt$JDXIEt zsfi_}MXB+{sX3|1C7Jno@dZWsSwNPO2Rv0|P@b5HkP(%%&~2 diff --git a/q02_best_k_features/tests/__pycache__/test_q02_percentile_k_features.cpython-36.pyc b/q02_best_k_features/tests/__pycache__/test_q02_percentile_k_features.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..4ceee7c8bdf1c21b49f8a5535185759dcb912c92 GIT binary patch literal 1963 zcmbtVO>f&q5Z&d6M19#t5T{5FEzvdwSQu8DoC>so8z(kW1ZoQhD8L+;HFqV`S(3`` zQmBRWr2Luwo1XXDlMnp^J#~hZWjS@yBBijiBkppB^WNLxy}_XS=l1WEv$g*1jjb+>ia*_hl2TMHU@c$){j!@Io4`+P8I z$6Y~12UdEAgm3W8*Mx5hcj3l;?jMn8>)e4<5w+V>p;A$pOp4@1G8W8KO6YS~#MR)b z&}N@$0sh8Bm~kZ~QxiQE>1h55XNC<=%1Vo5suOIaM8gZi2QcHI@Z2Lw^ z?)1!lh8wS6PFAJi>uC=RaRNHO|5m(r|4Xndq+rmRl#jq!C#9i;dmMzmB)}h?BLU|( z!OXv25x~WmfmXvAla9G5uI`Aa+Jp#^d&!W(QyV#|1C#2a!HOHx z2hV=`j>4AFH3n@!q5#sj?*-CDtQAHmwib*UqYuFW!Gd%RoDJimgx3V>jOP27sK9{^ z&Dm6h<5Go6Krbj7h{8;V&!1%4Jl_e=$_fN5mg`wD3Ge90vs;Z|AM3}3Hmpd6?VEDC zYAM!}@VNCbJfK;l_6A^IyaTZ2Ws+~8g z!xeB?T3C(&D`A~R6t!)TBn8VwlGtvN-AwTH(-A!~SCH1^hj z243I?t@>^>u>NtCN#1n8peizh1uNvjwt;(WpY;ihTT@nWrmZvOaR6Twp1|kEdiY6F hw_tmXXC3vrm$1P%O%?a?tmq9eeTu)p>Cziu{|2^yDaZf- literal 0 HcmV?d00001 From 0411108aedd30eeea09ac7897629ac0612bc23fc Mon Sep 17 00:00:00 2001 From: ShardulJ Date: Wed, 24 Oct 2018 07:00:46 +0000 Subject: [PATCH 3/5] Done --- q03_rf_rfe/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 161 bytes q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 0 -> 624 bytes q03_rf_rfe/build.py | 11 +++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 167 bytes .../__pycache__/test_q03_rf_rfe.cpython-36.pyc | Bin 0 -> 1862 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 172 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 891 bytes q04_select_from_model/build.py | 13 ++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 178 bytes .../test_q04_select_from_model.cpython-36.pyc | Bin 0 -> 2082 bytes 10 files changed, 23 insertions(+), 1 deletion(-) 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..1c0c1247e81c1d923614b1bf980b01afb1e1a945 GIT binary patch literal 161 zcmXr!<>h)SdLfzt2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUw---`MIh3!5N7~ zDWy4H`r-LS*~JBk$*KCu`6;RTX{m`NrA4Xn#i==|$t9WjdGQ5B`B^}wexZSJd{G(@ grRvAWXXa&=#K-FuRNmsS$;}5ElxhdErx=JC09BPLod5s; 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..dec08f0f6f3c028a14e6749f4fd47f22cef30c09 GIT binary patch literal 624 zcmZWlv2NQi5am&_q#8~ebO@TYn-{A<)*>hnG(!tyaE2D@ATZ*&p-hP`Nd-vYOlm$R zbAF^V*G~S0F6~K00Ruho9`BCi@!mT*IGCodetdZX#(uIr;}pLmcc%oBNzkkSgqlm< zLlIFW(s45>CNP}FI%(1(rFbHf@2to$!>9+!;gZeM9ra)rcdw=JBEL4B!*XL)g|2Km z?bVI2N_bpU?q&`lTAshB?Pw`lX_|9m(fKnioKq`>wxU5tiwOrmBX>)JEvtu7*aIiz z4}8Us**)x4qp`w0c;2%f?xSr~M_btPo&(!L9aBD$u%>r)(lZ)7zSs@l?S7Nl2}ScX z#7djW4)WNDAVe$WLs}W#HLWW$E84Yczm_5KMl0v%afk=n0X_$~4ImzweNOLweIy|o z%rCEnm7V^Oe=>IMHlo73G7|F@3g1~Q9crw+GA$`)Y6|mjZ%#_PqJ{ZYr?gybZbS07 zFr&t9O2GILyo4#tz#dXIe-@Gr$thgm8yPZ-LYAbq9qty#Zmm(+cJbezBhBLQ-#NAp kn=6eY@v-qpWe;9ZzmUCc3{k?h)SdLfzt2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUm^M#`MIh3!5N7~ zDWy4H`r-LS*~JBk$*KCu`6;RTX{m`NrA4Xn#i==|$t9WjdGQ5B`B^}wexZSJd{G(@ mrRtZY7MB$3$H!;pWtPOp>lIYq;;_lh2O5`Z2ePdgh#3HMek}z6 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..a204c152f5837799beaf03e5973d2acc577e01c6 GIT binary patch literal 1862 zcmaJ?OK;mo5Z)yziK1lJPGYA{(S|6R0s;&xk5hr7i0#Bi3fC>{JYeR)tTii{4j;?Xn+BaS-`QiVk@x&n=`P%iJhbt)X-;8i|a`vXmBR^sSEXU9yFl=E;PY|7PMgj z7U2t6f@Qb?H{lknz$)AxEC-&f$tFg(b{TvLYabb`N&DOm+Q1K4=gtMr&h|UJaGy(U zwuP1#7QVq3b=415U!u1-kfxuT~ucMJ=u>uP?SRYwnQ?amh zpaykpYg8I+>(E4!y}~1M4@y3J9Ea0I`CNRq@zD>_7-sl6|DAterccjPE{ukJT{}d@NL+$kb^69<2Mj(MYD~bsU8vWXeHPw1n1D znWyh^5f^qW(~ea*TE_jtp)&u$R2#$od5vXGWcTnyD9GcVyRS0!Ru4r_c6%AfZeI$M zD;eTIoH@!;)I)ZPZui~&N2neWP}d-KUD|N=c4K%}tk9Q9R5)Gp0?w;xjm&oW*q<@C zab@@=K51CV=Qrrg^I5S;+iS|5y?s8sGcJ|)yU=%8d! zJO<@xY!cC&M6CVs_6#9zT;H4xrQgq#uOt>Pt>F5R_TTJ9+Pqo!&$1jPBq!gabl~69 z9j92TB=bx^OSKVcPZn*H4a12Bbm7D}yl^OehgU>=#=%$f98|N1(InYzqJls%q{8Ck z@2?@_vtgGwnU{k z$+o)&^x74mD}{ZH!!;cPjE}$jf4J3v{Z6BB!!Q+z48y_;Lp(k6nEZAa(oU|vs6|Yv zmdLD-A!_I3SQdpesfcdsX+q<2w}yAUeA`(F>O+x&(1kUG!p+mj5DrDlEo#SjghO?Z zG_Zhl?37y}aPgFf5PtxLLq7?%is2h)SdLfzt2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUy=G5`MIh3!5N7~ zDWy4H`r-LS*~JBk$*KCu`6;RTX{m`NrA4Xn#i==|$t9WjdGQ5B`B^}wexZR0R5U)V nC_gto7pOc(KR!M)FS8^*Uaz3?7KaT`tTZRp4rFC95HkP(cX}^4 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..4292794413d7fc68c22d4301bb938094df6b965f GIT binary patch literal 891 zcmZWnO>fjN5cN3OB%5x(Kvb-_A#uoMQwfe$g#_vWi5^%4C}``eAGMQ;R=cOA zq8t$7XYg-0`^stmLN72*TeMOwd1623&AfT`)74e~$HU(rA5lX7kfnip@*Jny!@vjw zK?;Zf%$f>XSdrDOEn!DJ#4O=NF7M?Yv*!@?S&uniNaS;$_veOXjY;4xFc%3xuaCLl zX|pG*;&sKiKxpetQnISpt0Y&=3y~<5O)@U`&mXg-Ny4M5RXna`mU0yrt!T2-L}p3D zN2xkZ!Q{nZ-%Ja?N?>S64mo9DBuq(ep-^%`F}fFYLWktrGU^#*294eH=41{tI;FXD zNv1HT$fmi=EM|X)+?$h`^_5JZYtoxqFY#||ufM*^iaQSfkllt|W! zSK<3g9;-S@d6=S`;e;nmD|xIsle4Ns->Mw_4o|k9-JtOVy^jlHet6Jkf{p64D}P61 zs!6M&-rY13jb4YGKecXfDoupi#l-zzouX*t_MDfB7YBl0YjkStAW@puO!vyRsL$j&Ce)tf l35)UJ$p^UYigY5ELZ{Q)L4#Ytcf0p!paIJAz@t8R{y&pa>XHBe literal 0 HcmV?d00001 diff --git a/q04_select_from_model/build.py b/q04_select_from_model/build.py index 12dd1df..0ab8cef 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 @@ -5,6 +6,16 @@ import numpy as np data = pd.read_csv('data/house_prices_multivariate.csv') +def select_from_model(data): + + np.random.seed(9) + X = data.iloc[:,:-1] + y = data.iloc[:,-1] + a = SelectFromModel(RandomForestClassifier()) + a.fit(X,y) + b= a.get_support(indices =True).tolist() + return [X.columns[x] for x in b] + +select_from_model(data) -# Your solution code here 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..1cf1e28023ee0df9be8a67472ec584c6395a6208 GIT binary patch literal 178 zcmXr!<>h)SdLfzt2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CU-9}G`MIh3!5N7~ zDWy4H`r-LS*~JBk$*KCu`6;RTX{m`NrA4Xn#i==|$t9WjdGQ5B`B^}wexZR0R5U)V tC_gto7pOc(za+J|q*y;bJ~J<~BtBlRpz;=n4N#^uC)EyQaWN1x006Q_F`xhd 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..5931cf9eaf5674f5d058d262141d57839c06d4b7 GIT binary patch literal 2082 zcmbVNOK;pZ5GEzVX#=YVh0$==a`ae} zlu<9z)8^EF(tp#lu08qCKhRTWBxn7I(;}6?;gA{)Ip2I7emXPL`fKTrpI7RP{mCvo z^Qb?-rhh{L40z0ZUiOx6V{gSyQuAw^felVvPa1v$bq2NAO`3j_Gie{Tpg!S#Tk^xs z;S4k;94%aELJQi^ff<;EIhcn9ScDsJ6P92ZZVl)CS=o?n{BLfD!3wOtX0R%26WgB$ z-e=w0r??-s*X4!#RBE#&v^=$N1}7G@jAdwofy$B~$w0<9IXjeQkjJr5Lp_q=_(Kpz z^bWFI%V4CUQ0gGbV-p<<6$v9ZLVbMNM1OvJH#6HRON|&xzk!2?N(#TZFNNC7quBTz zQh$)R&_e*f^{vo9rK&V)ZR*5qM`?fiuHPj6$8^x&_S;W0BVrokz`d)@cC1LdmqMjA zchqilT)JrQ2!#vpt4&;~RShcN&$0|2$?zpP{B9)E?=ux1;Gn**`dJJi!Sm)JU>;!8 z>nLQIK;Hrm)@z1I#Kd9mKn?2H*PsC|_H}3?%&lUH;O$>UH00=s9&+ts+rp;rp)kzw z3ICP9VuzNoUvc28Y=TSSG8e`JYne@KVhS$e>?v}0N@BeB_!rENk>Fvf@n z+lh{4idxrEHMCO>ilQyFmdZRn%0*n*u}r&G;b8g)g+qz{ov9f#`}+tJoycDQKq$!L zZ+g!%^-_;SD0?B&qc@Pkl#$Qg+200LT z0K8)n=Tdu+d1+?6M40fv8dDc~Epxx|V8Vr#d7E_Dam6R;;}vkTaM1CK^>> za0KJ?_X6XMk0};JBP?ST7PnDBDk3QjGTzuk&I{DD_QqT15MW90%*jZ4gG_l!A}P`e z4=>W*^W8|B=j+}{mLoOg+4m?NdUtf!DdsCGKG9E7ZA2Q%VzJ_rgrF=cFJh?+Cq^fQ zLyL5Ih1V6RK7I#O)pmmD%=;=KMo}_E%;Mww?}gbFXP2Ox(rED#bW`deWRIqhQ8->U zK$Ng-QiMnx6z9~bR>IT#mL(F1XrpeRC|r4V>feFNNB@pWMcOs=q^Te=KK|oy8E2vU*AAShY^-645QdM5~|(o|m*onW;`ajPP*K!;ae|f zy9<6T%@ZsaRyy+QBawp8g*Af0&C|$G%!=YEYA^7rfvV;;kOEX8%j4&}cpE{0w^iZL vjaJkZI>{2Mf)dm%{J8|UT<*Hv74H2iyszolXo>{4$UF2}EtIqP;*9kVsS`^w literal 0 HcmV?d00001 From c72d5a798281f7f900999c9f529054d0104ddfed Mon Sep 17 00:00:00 2001 From: ShardulJ Date: Fri, 26 Oct 2018 12:04:23 +0000 Subject: [PATCH 4/5] Done --- q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 624 -> 624 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/q03_rf_rfe/__pycache__/build.cpython-36.pyc b/q03_rf_rfe/__pycache__/build.cpython-36.pyc index dec08f0f6f3c028a14e6749f4fd47f22cef30c09..10aeb06ffdd9812daeb01626ea15f43d6ca5136c 100644 GIT binary patch delta 16 Xcmeys@_~ijn3tDp9@FKG?3qjeES3b_ delta 16 Xcmeys@_~ijn3tD}UE;z<_Dm)KDCz`R From 8c964bc67c43f0bed420c0ba9a58ec1a9228bfa0 Mon Sep 17 00:00:00 2001 From: ShardulJ Date: Fri, 26 Oct 2018 12:05:27 +0000 Subject: [PATCH 5/5] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 171 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 1280 bytes q05_forward_selected/build.py | 40 +++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 177 bytes .../test_q05_forward_selected.cpython-36.pyc | Bin 0 -> 2849 bytes 5 files changed, 39 insertions(+), 1 deletion(-) 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..23032e0a03a6fd0ce8133aeb896043b5eb90f90d GIT binary patch literal 171 zcmXr!<>h)SdLfzt2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUlIBl`MIh3!5N7~ zDWy4H`r-LS*~JBk$*KCu`6;RTX{m`NrA4Xn#i==|$t9WjdGQ5B`B^}wexZSBd|G}{ mIZz)|HZ?^*K0Y%qvm`!Vub}c4hfQui(8yFfkd4Ja%m4sI1TNA5 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..f819fed3de7d5dd1348ff90bea2a12323dbd3629 GIT binary patch literal 1280 zcmZ8gOONC<5VoCXr=L5lfPn*uTVJMEi?|>(LSn@Mq1C_$?aBy6CU*BG<2>4S&rT!v zDO{2G8~h$_zH-`s0Gud?o`*J(%ayNO`O2=(pH8RQKjhCJzl#z23q5!O@V|ti*I+o} zSR#sHCX&ozQgfu^iD1;t|Bhbc~U})r7}Arc)90h|YMz(_ayt zi@BJJSx+DfU!vvc4RE37OY9ckmW^QQd$CbM>#}VCOV!g{7p)RLZWJq<+z4%Q-O17b zc2W!0IUl+ua!ZU{fr+~hK zq0cew8XpKJhrl3zl=ND*u4s}E}UK8kM^jyIqqBq{q(Iu1O!gpYaX~=F$y?o?C zS!zQ=uG-EeMJso8qaEou9X*4#eXUq6T%=gD5iXFTadFW$1v4~Qmxd-Cw7D#di&@u+ zhAXdFN1Dz>OewZ^LCtPx%+v;E7b{V>*J3$$p_hb<>Xr*hC#~f9t*+>#5wGvQT)Gy_ z>_C6?krq-E22^zq-6q{b*~|QPou|{FGl%yy9yF^RE**YJ<2~q5zz&=4e=+MnkUE9R z|NQ}ET8q`?E2j8PezSVfsw>^GLaYiXb#-JuQoxOX|FjiUwc0-UEMK?kHRRnDu=;sd zN`BVu-Qw-g49N87U=R-BeLUC{`oKmvMb6@Bjx^{u$ymv!b~y}lk}ti01$Ip AwEzGB literal 0 HcmV?d00001 diff --git a/q05_forward_selected/build.py b/q05_forward_selected/build.py index 8816abd..db7fe56 100644 --- a/q05_forward_selected/build.py +++ b/q05_forward_selected/build.py @@ -1,10 +1,48 @@ +# %load q05_forward_selected/build.py # Default imports import pandas as pd from sklearn.linear_model import LinearRegression +from sklearn.metrics import r2_score +from sklearn.model_selection import train_test_split as tts +import numpy as np +from sklearn.metrics import mean_squared_error data = pd.read_csv('data/house_prices_multivariate.csv') model = LinearRegression() +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) + + -# Your solution code here 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..3504dd71d5065cbd6cef7edf683f97b7330002a3 GIT binary patch literal 177 zcmXr!<>h)SdLfzt2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUvc^w`MIh3!5N7~ zDWy4H`r-LS*~JBk$*KCu`6;RTX{m`NrA4Xn#i==|$t9WjdGQ5B`B^}wexZSBd|G}{ sIZz)|HZ?`RB(=DtSU)~KGcU6wK3=b&@)n0pZa&c9R6CHp#X!se0DWgMIsgCw literal 0 HcmV?d00001 diff --git a/q05_forward_selected/tests/__pycache__/test_q05_forward_selected.cpython-36.pyc b/q05_forward_selected/tests/__pycache__/test_q05_forward_selected.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6e9a5a549ca163d883f3278daa3d59dab53bc428 GIT binary patch literal 2849 zcmc&$&2Jk;6yGn~8^?B>Hc3B8S1lD7wQOq0!y7kDMY*G_dGe?q$5(!V0u)evrKvJiRX_vX*P1%hQCGn5jb?^r z5m(C^sH~PKJ3r>dDhSS<_nPPs;tO!U4@mvgg(eaKNO${B^ZD*3^wv?fa|=- zOI__vjg{FTFXQ|z?`u00wgtAr5DdczY=iBv19rkL*o`x`^1TB zvth{2DV04-xPPUh#^$SBMw5=@OIrG&To1)1M}RH4&)tXv4k|TxRB!vfBO0>BUHnp> z@dECM)4UKIsU_3NLz*d!7dq=Q`7Znd35=^2OW~E4-d8 z-V9*^faPYwC^hqvBVP+ds-Fo%IKkZub5l#?wZ@HizZ&}f$2+ygts7r|`O&w()EYC@ z@?WFh+^sd9fA89@TI<(Z z#Lb$f#pC$OqbRt-R8W`(Dri>}rh^U!wgzM%i){vSU}Bpk zw_}?l*JEo!5nWV@hsZZm_qfAV(J(!<64Fzd#8)0h5h;<{Ro_uBEAv{UUsgfgp>%O& zTy@R=x;CP86O!T@#;hQ7LPxQ<=j7YyT=ckwer`8;5J_u49I&Rn4i8YP7$QT14HR*| zBPAEn$&2X8Soe8Q(P9HBQ;!W|$u&h3aoC?B5~9hgbLWv!ZU2SpnNVDiEyv|mHw0d- zb0=yGzRWeG5i%#7$4yi(9(u~YmxsgjNtnR?|V! zTa5(v^&=|!stZIPu2|7TKQ^L3f)Gzd3AK21<8v%ql)G?DiiCB70t-2Hu*a!hEMY*cMpNnq%xy_`MUMwk_7KI=B$kcBmOXwbF7V|vXk+Di z03?-%@+RGZjrPV5Jwc#Qs#es+W1DBqT2t#Fp-h~F+vBLDkWkj|s`Ew{Ll5;#s#ERh z8g%) zdJs3dg51-aM=r53Tj`5U+YX#2x9vD@+jwJW`=l3an@U&OBL;9SF-T&B#C8(9N$exB znluuPlB=M~OJgNvUQ;y