From 28f9856bbe956f589632c53e29c428382fa97ee2 Mon Sep 17 00:00:00 2001 From: tracedence Date: Fri, 30 Nov 2018 05:45:28 +0000 Subject: [PATCH 1/6] Done --- __pycache__/__init__.cpython-36.pyc | Bin 154 -> 152 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 178 -> 166 bytes q01_plot_corr/__pycache__/build.cpython-36.pyc | Bin 558 -> 783 bytes q01_plot_corr/build.py | 15 ++++++++++++--- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 167 -> 172 bytes .../test_q01_plot_corr.cpython-36.pyc | Bin 791 -> 1101 bytes 6 files changed, 12 insertions(+), 3 deletions(-) diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index abc397ac59f40d351e1861264050586541adce96..3334d9c5eaa7536dc3bfc8448bc60f6886aa2b60 100644 GIT binary patch delta 79 zcmbQmID?VHn3tF9!&!!yi5%wEuKF4IxvBakMTyC&DXDqMsruphMcKs#K(2mreoCr- gT54iRX;Er?acWL#a!F=>UVK4Oeio3aKe0v*05V4$ssI20 delta 81 zcmbQiIE#_Pn3tC;r0Y!NL=JOXcW0}Z(Bjmh;+VvwjLhPU)a)3S)Z*-t{DPSDqSVU7 elKkA5f};Ga)Z`Kv9bb}~Tac4jk{UCyN)7;m5FSwg diff --git a/q01_plot_corr/__pycache__/__init__.cpython-36.pyc b/q01_plot_corr/__pycache__/__init__.cpython-36.pyc index 460f88abffae2c2371906282e6e7f121c82a6603..577d1b0f824d42f1709a77ebf0ae03f0088f8e00 100644 GIT binary patch delta 120 zcmdnQxQvm*n3tF9!&!!yi5%wX!TK5bxvBakMTyC&DXDqMsruphMcKs#K(2mreoCr- zT54iRX;Er?acWL#a!F=>UVK4Oeio3aUua+$Uyzeu5}%x3RHPptpP83g5+AQuPF4FDJvIMNnwS!wTwE5Pl30=$Uy>i6k`^L)t;LJ<0e?u`KaHz4LKD1ii4h+?orkt(1;71FSZ zXjH{C#&>yACN!04ITAsSF_O3(i?GLZB2p2H>jJi3-#in{vTW0IM&_+9xHNgyDO+4HT`((8 zxVbn?;8G5_h7p1G@)pE=1GPgX>d~H9yo0$S0^i~@vJdv5C4%@acVQXq2G52zvhfZO z_PEF1ia><70Y*0cKhqP>2cU{h7uY4MVr_~WN#oDzo&F#W6iUN-svFB}(bS8P3wfip z4k4j^hcu~}HJj#A`!{frX7yUSK*`!Ayir|M8|_goA{TlVT<8mEkJbfH&JlL?1L=nl z|9%e?RWh@haVccYW%jAjThl_A@kYpOC7JEC%#Bo%`+k7UrUW-TfBqu()aSmtY}pk` zoV3?&^mlCv1&mh+r}zQL7(d1OF~ke36K{@O+_G9Q<47yqF~IVNRk4JNyf?rYQ2s*? zM~0jWT4m|nTo#sZ@+IS2Sqq>|GLggM>LVyH6m!S<8oox|RTBO|?itZ@pY#OWQ;#5Y Z>8q*{oszFTwZ?Bt@e^nqW;7n9_z#68&8PqX 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..2c456aa 100644 --- a/q01_plot_corr/build.py +++ b/q01_plot_corr/build.py @@ -1,16 +1,25 @@ +# %load q01_plot_corr/build.py # Default imports import pandas as pd from matplotlib.pyplot import yticks, xticks, subplots, set_cmap +import matplotlib.pyplot as plt plt.switch_backend('agg') data = pd.read_csv('data/house_prices_multivariate.csv') -# Write your solution here: + +#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 ax + +plot_corr(data,) +data._get_numeric_data().columns + + + diff --git a/q01_plot_corr/tests/__pycache__/__init__.cpython-36.pyc b/q01_plot_corr/tests/__pycache__/__init__.cpython-36.pyc index c4bc30d7704db1af3a7d76f564945a76f376cb2d..ad5b4247a3dbf33023403f17dba6a85ea76f6b7a 100644 GIT binary patch delta 99 zcmZ3^xQ3C#n3tF9^I3+Ni5%wsk@^|=xvBakMTyC&DXDqMsruphMcKs#K(2mreoCr- zT54iRX;Er?acWL#a!F=>UVK4Oeio3aUua+$Uyzeu5}%x3RHR>$T3k}BKe1B|0N4E_ AnE(I) 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$pHXv(j+zj 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..899f7039c9186095cc73f4a522e02cbde973be02 100644 GIT binary patch literal 1101 zcmaKrTWb_C6vvaf?9Ohx)h90?ItUd8q~qmD5Gj;W@L>@Zgh2>#l5MAEE=@9vF7;{q zW&ALHfxP;(&%XKOIkW9{SI`VOIk}zu&u^0FqtWo!5AyM?N61gIRs!(%p_?3=v^|0kPvRIKk;snIRYXOJQ!;Xr+qN92ZvuE6)QyyS+%9C ztciEU=2H_HK(CBegv|Yq@g1l2zilz(_T50W$ec^cF1podc6nrdIP@ z3R&ec{ZQ-Arh#sn*FvTf$!)78gRO9OQCEPkJ_R>Dd-9a6kf#k``4xoz__^sd>@>3z)QR$5O8-cVTR)ca$I2IvllCvLQXhb zg?P$UD@`owxTGvdu^dYx15VgIV#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: Thu, 6 Dec 2018 13:43:30 +0000 Subject: [PATCH 2/6] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 167 -> 172 bytes .../__pycache__/build.cpython-36.pyc | Bin 951 -> 853 bytes q02_best_k_features/build.py | 19 ++++++++++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 173 -> 178 bytes ...t_q02_percentile_k_features.cpython-36.pyc | Bin 0 -> 1965 bytes 5 files changed, 19 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..ada48c3af02137a03fd1e934ba6468ec290fed70 100644 GIT binary patch delta 99 zcmZ3^xQ3C#n3tF9!&!!yi5%wsk@^|=xvBakMTyC&DXDqMsruphMcKs#K(2mreoCr- vT54iRX;Er?acWL#a!F=>UVK4Oeio3aUua+ypOji$5}zFpRaC4$u~QBJ)>I^y delta 94 zcmZ3(xSWy0n3tC;r0Y!NL=JPW5NE5H(Bjmh;+VvwjLhPU)a)3S)Z*-t{DPSDqSVU7 slKkA5wA93s(xTM(;?$hf~2*RiqtCyq`fr!ToFQmdO@m?DuHByA~&9tr1`^ksupE0EIslD zyZ|r51Nh2mUx5pZw?(@Wjy#ze+cV!cGf!r-t&gP%9^3p)`6${@|y|K_v4xDPT2=#OfmzHpHydsEXPFT`!XiyWXq3=7XO>n{M z0TeRx%T~ap4DtFA-jBIL)}n0BR)28G*oK)gudKUVTFTNkhs}yoXIk=B6`gF@ND)j90@@tXcbz;}J(_9W2}o}rXKLM6 z>>u{NtFXiAr-zTTb^P;x8B}^Yl(jhQugw0Ya@pp52UDs&6b`vZ_Q({!UHo?NFZaPw9&(0t_Q0Fyp*&hA}Zd2rSyfw!yVMotIPn%8*H9WJa OluZ!Pgd!F{N&W)OZ0NE8 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..bb437f6 100644 --- a/q02_best_k_features/build.py +++ b/q02_best_k_features/build.py @@ -1,3 +1,4 @@ +# %load q02_best_k_features/build.py # Default imports import pandas as pd @@ -10,3 +11,21 @@ # Write your solution here: +def percentile_k_features(df, K=20): + x = df.iloc[:,:-1] + y = df.iloc[:,-1] + #selecting features on the basis of p-value i.e whose value less than percentile is true + best_feature = SelectPercentile(f_regression, percentile=K) + #selecting best features from X + best_feature.fit_transform(x,y) + #creating dataframe from score, get_support, result + d = {'support': best_feature.get_support(),'values':best_feature.scores_} + df1 = pd.DataFrame(d,index = x.columns) + #sorting values according get_support + df1 = df1.sort_values('values', ascending=False) + #selecting only rows whose value of support is True + col = df1[df1.support].index + return list(col) # returning list of features +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..4b927246322574024c8d3c66455b35a9a2c0ee48 100644 GIT binary patch delta 105 zcmZ3>xQUU&n3tF9!&!!yi5%vk@%kD0xvBakMTyC&DXDqMsruphMcKs#K(2mreoCr- zT54iRX;Er?acWL#a!F=>UVK4Oeio3aUua+ypOji$5}zFpRaC5B0^}F#PwbZi0K>y4 A7XSbN delta 127 zcmdnQxR#N_n3tE!{`%F(i5%v6QO;H|p~b01#W9IV8JWcyso60usm0kP`2{iQMX8mE zCHc8AX{m`NrA4Xn#i==|$t9Wjc`=0sChPO2Rv0|P@b5HkP(&7>{3 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..7d1e9e98fe5d216c17946685a7ce54d945939776 GIT binary patch literal 1965 zcmbtVOK%)S5bmDG?(EC9A`%o1FamRpdBk4<;a z3a`Rx^Jn-m{DHo5@{Kbms%F;fb#MX-v+A0f?VhTs@B6y?tHGfA=kM(2J)f~Z*v8dH ze;rDZ%*X(Dx;SD8uYLZ!mUy+qHW-uH8cbd54(zzAz^Veb~iC zCG6wSyJ#efIIze84$dnUx!{6_cMp7M;oT>I@ZN$Bmfy9vsj?rgt3BZujV=lw;5fjc z@1ilx@FoA1zhtM5abI%ax7iZYVXBSiiF1oBi7$qUys>ieO+_&mA3gj9fin_9#IVW{ zbsgS;-S8-#%L2Wjr%)M8QDWN@T1#afzCh%xo5^D6SWnArVm)HuH>P^H?5_$5$mPf= zkw}n5B1b=!>baib<0vUXj#iY$_$ua3%L2J7PthH{_~LGSj3{jIJ~H^MYa7$_wc^;D zo!L)m;q}w;x;Xkk?V({#z!&%4i1^-r33i1R3R=_hAv&A1G^BtBDD@Qu{`j0IIDZe# z;_Ed9ASVLV8qP&lNgYBN7NrSuVUm+@S`%`0#gMCQj4*UBIa0K5hmPvtO?Amo#f|Bs zXFqvMVXNqxf;J#=1nJv%0_h^w8Y7Zh3rCI72k4+=QM?9shjB^78xnQKi-Sv4a7%~g zY$n4=sX`^O8x##hVXDJtk5g@)?S^M%g%Xyl`LvjZcl6M+JB?%?=|_b&0<~!Srkt&t ziuE#l-Fg%r(X3H>4Y1GO0$B4gak`34bZV-RA#M&|Ja{MMUJH5!z_rM3Tmf(`EClYs z8aOH~EGLK+HoxPnRuq~`O*NTt@Bd>ZN{WP}D2)x|szw%s_+OQ`U?h;2WPsXsL{YJlm~4w;)|-Y0WOaP85yP{bN-7fszY z;DHzTL970EII#Y4m1fZNz@REpLj^11!nTonYM}KFj9N2MfY8>NK@{Mb0x=#q)}up7 h-NNNHo^{mgKEejyG*#TAy`s0!^f~ Date: Fri, 7 Dec 2018 13:28:46 +0000 Subject: [PATCH 3/6] Done --- q03_rf_rfe/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 163 bytes q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 0 -> 646 bytes q03_rf_rfe/build.py | 16 +++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 169 bytes .../__pycache__/test_q03_rf_rfe.cpython-36.pyc | Bin 0 -> 1864 bytes 5 files changed, 15 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 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..5b44655d86658f9c4ae045e01aadc154ee5a2664 GIT binary patch literal 163 zcmXr!<>mTtmLY}#2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUjh0V`MIh3B}IwJ zsVS*>$*KC``9;~q1wgKTa(+sxep+f`Noi4Pd~s?{YH~?teqMY*QGOPXsb6Sd9AA_M iM5+4m@tJv-NV4TJ}Z6?Kp>O`jBS&?Ce(GIAGcWgP?(++n1?YR_Q#H~PJ6nrZn&!$_bpBEc=TxoGRwVQgDPc@`N$K7b3~Vz>VGo>; zKk%9_*cOi1=)iCfJGPBHA4uRf9^y?jz`%DLn2!h8B*df(Mzdr{NPK*~ACKJsp|A;6 z%SnipHkFO2v7=8Rs+AA1R?de>Wpv-PuE<>9b;kN~nFcQF0AB;#7kn)WZtEgzjPs>a zpMEeqrxm~7k}nPB-iit(wiV_djJDcGmPEKfq(k;lRX-pPA)oUN%Pd8ZSoM+>{{WQ$B-PoSpmy8KmTtmLY}#2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUt#(g`MIh3B}IwJ zsVS*>$*KC``9;~q1wgKTa(+sxep+f`Noi4Pd~s?{YH~?teqMY*QGOPXsb6Sd9AA_M nL_qDS#U;i1@$s2?nI-Y@dIgoYIBatBQ%ZAE?LhVw12F>t+X*e? 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..177a35ff5912fc2a7506d25cc78c9035acf920da GIT binary patch literal 1864 zcmaJ?O>f&q5ZxsyiK1lJPGhG|(S|6R0s;)HNlpcdBDND70bIAR(*!13Fl)_9ro#_q zcPYd|dQ$#Oe@y=XuRZzJb5ETi6-iF*lHlwtIXk=a-rMD)r6uq0KiRJ@YK;BG7OqwF zALFCnq5%dxW&y|6imk*BY|g+2Cw7urP(zCYu=D+Gp??Y`kZ%A?=ABw1FS9&fQC#ogH>~;Xaqz z>Z%{AzC>?%AWc7yW1$9mD0}0tKp4?I%W^Hlp^AD^he;lrXe3l5jNIz! zQP4Wb%$~|pBL*^PU}sxN5j0PvP&;`Po1jhZkxVk!1_-<#g?^E$GRWJ}iP?+N(E4yy}~1Kk4ijy9Ea0I`CNQ<@zD>_7-sl{|IXjBbIaK8IPeWN!Tgwe zq2IUG*@Wc5Ftc;0DBUHQ@x7;SksTw!N22mXrbhesVbkA_MlwaO<0up%Qx2M5d{U86)#f=qj|`!Z9n^$@$=UIwz;m%`*q zhBy@Gj-j)DKChYp{A<+Hn4MYj{zt(U)mdI9v4+&a7#b%y#+MpJTUm zZTJ;LX;_Kqm*^}aTH#3>Y=)kFcxhwQ_`4Z!Ao~K9?2km8OYKAEr(s))>vr95m@iwq%H8LFtby}0^m9(@bHRJC%f_1+D&eu$oxN`%+(DNDVJ4vGfl zV^EOBCK)Y=#5x@B&MU;N>zj+A^!u6el|=H=s$4(P{;PvXn^&9uMV6z8(L2#Nx>e3tFw8^|5?Bw@%}da5QtutC?^^{U;KMC%P3)Q@C=v z@op%3x?g?)j;H5~+ukH7x^a;pJ{okrn?VJZ?ChJ_b~cz)(F`Ry>IybDR4exsSwzCw}hav@`3u_34o2QYXIutFpsGZ^=4%Jc8 zKmzIDDYru4;yDi?{sIbzeiLdP!%LXTtk*4~aKEpr_<>Yi?g*E+>9#z+jJL;K>tDBU B_BsFn literal 0 HcmV?d00001 From 0d85bb5d06c910bacef91edd8098bab834c00cb5 Mon Sep 17 00:00:00 2001 From: tracedence Date: Fri, 7 Dec 2018 13:29:07 +0000 Subject: [PATCH 4/6] Done --- q03_rf_rfe/build.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/q03_rf_rfe/build.py b/q03_rf_rfe/build.py index f35450e..7483767 100644 --- a/q03_rf_rfe/build.py +++ b/q03_rf_rfe/build.py @@ -16,7 +16,7 @@ def rf_rfe(df): #creating a model Ra = RandomForestClassifier() rf = RFE(Ra) - # + #selecting best features all avaiable features rf.fit(x,y) most_sig = list(x.columns[rf.support_]) return most_sig From 87847c412530a5f8da33577440bcc068df9c0d39 Mon Sep 17 00:00:00 2001 From: tracedence Date: Fri, 7 Dec 2018 13:52:50 +0000 Subject: [PATCH 5/6] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 174 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 758 bytes q04_select_from_model/build.py | 14 +++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 180 bytes .../test_q04_select_from_model.cpython-36.pyc | Bin 0 -> 2084 bytes 5 files changed, 13 insertions(+), 1 deletion(-) 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/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..2fd8e3ea725f4ee39c67adadc7aa0be76a562319 GIT binary patch literal 174 zcmXr!<>mTtmLY}#2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CU(xy*`MIh3B}IwJ zsVS*>$*KC``9;~q1wgKTa(+sxep+f`Noi4Pd~s?{YH~?teqMY*QGOPXsb6Sd0u_x< nE6UG}&jl*a(T|VM%*!l^kJl@xyv1Py6f4b1wF6mN48#lo;%YD# 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..43ef503f199de946f256f8ffcc72c8620953d757 GIT binary patch literal 758 zcmZXS&1&2*5XU9?b2r{5+e2Wlz3pXPXpf~70=YGZ*IV8nkSLmf3I}I#EFk{VMXh!oJzgsNk%lrA4YevX#aYL4`i0K763?m&|n1m(Ou65cT0@I~;GBoRa~n_}mRtiwI#C2MMruRua( z&Q()=ZUjh_PA_>an(Dk!pv{@&S{Hc%>f*;6!3~eUHJygERYe9mtvYFnJFW_DV3X;) z{S4D)bWD!RM|086(DV(uo|Iz;z#q_+}eDg|95H4EBHm!F(&?VgG?%jjp7*y zs56MK8+EH&4C4%;#?P1Z#JXr|#MhLFJ^udoefp%PIgTK$#u>!hu8?BWKG@}pvj_|7 zSLg^mrLU<^LmJ^%Em2u7l9j%dz*W6@QF3CCoIIaHt)bdVnD|(~#gTJuSu3npcNLaq zb!$TfT%yD$hzMB3F>uLZom7D+^xD$Ma4L@KTorI4g`{}U}J~E^so3n_8;Xis& B(h>jw literal 0 HcmV?d00001 diff --git a/q04_select_from_model/build.py b/q04_select_from_model/build.py index 12dd1df..45b2b33 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 @@ -6,5 +7,16 @@ data = pd.read_csv('data/house_prices_multivariate.csv') - +np.random.seed(9) # Your solution code here +def select_from_model(df): + x = df.iloc[:,:-1] + y = df.iloc[:,-1] + Random = RandomForestClassifier() + best_features = SelectFromModel(Random) + best_features.fit(x,y) + feature_name = list(x.columns[best_features.get_support()]) + return feature_name +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..f11ce02bd441327471edc05f3b36bff9ffa52f02 GIT binary patch literal 180 zcmXr!<>mTtmLY}#2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUy1q|`MIh3B}IwJ zsVS*>$*KC``9;~q1wgKTa(+sxep+f`Noi4Pd~s?{YH~?teqMY*QGOPXsb6Sd0u_x< tE6UG}&jl*a(Jx6YE-BWJkI&4@EQycTE2zB1VFQ#Y%}KQbSzQdo3;-gGGJgO7 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..62bb0a3288174ae13c7a2f7c43b67651007db816 GIT binary patch literal 2084 zcmbVNOK;pZ5GEz;{? zDWhJbr_HJVq(7#AK-Zpp>$#`SNSpN|c8gR3heK*Kr zJn9dz>EBQQ10FMR24F<6ncvF*sC3cZ777>MR~xues~S|kUt}3Pmf>r1`2A3(KV&LAz(IXq?PW291kd}2fO&{b zuc44-0(}cOSnn7n5fg{K12w2)UxNm?*w>+nFt>^u1n=HOL_?0A=polGwoPpM9ty(@ zAM;=NTXtv}`z;5)!p681E^}twx0cx0CZ^yb&aNVNCnQFzPkzDt7zrMxDodl!(NC4>Gh>BxspM}oG43?6WJkdqxa^{7n9jDeCip*M3*wS)L?yhTzF*k z;lIH&tU278rZAZ8^3hk9;=KM}PR=EQoRx|A1eLRisM0{kbqcz@dt#&2=<6xoAo~K3 zfOjO~Txt(8FU^dX2ooN7gA)Do7G3)^6N=7C*HUflREGosUx``Niq$IunYh%~(WnB0 zBN$(P6d3P)OtBy$VIixqxP=Om5ou|V^TsB6o*|#LJK8*j0E>cWj)&6gXUbC&Ns(4~ zc#-yA?nK(WT=R~z9LXss-=lQk-PT>Fn6JqAR6k9%5y-M)vEq}2pe!q|VyO!!Mkj?s zi*$K~*9E9PzXGaiJ3%z@zCwsmlnfEG_~^k$VRpgUIq0S|T095clsX96<0)hmj+gZj zB`lm2Arc40DRruq@H~HDi3B3rsB0(+S5D6T6{vjn@2FIyT}4ltN)qFvZ~hM+m7Cpe zqi};D6^RUjq7~3BlEVhm z;MdYT!E#}xL%%*0DF|IyLnz!ljSR)CD4wGB3NIU|s$K&rKsB;Fe!h$M5d?T&6%O5L uMO~qjETK9mLEXfkOMuJeF56w Date: Wed, 9 Jan 2019 11:18:53 +0000 Subject: [PATCH 6/6] Done --- .../__pycache__/build.cpython-36.pyc | Bin 783 -> 783 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 173 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 1059 bytes q05_forward_selected/build.py | 93 ++++++++++++++++++ .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 179 bytes .../test_q05_forward_selected.cpython-36.pyc | Bin 0 -> 2851 bytes 6 files changed, 93 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/q01_plot_corr/__pycache__/build.cpython-36.pyc b/q01_plot_corr/__pycache__/build.cpython-36.pyc index 29b8aaf9c6a4d1c1c710ea1645a028822f004256..ac4dca5bd4362ba49a5c034aff1f26875991cbde 100644 GIT binary patch delta 16 XcmeBY>t|y(=H=!3@<4YZI|nlWB>x0W delta 16 XcmeBY>t|y(=H=zeImfV(or4(wANm7^ 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..edc7811cd10b4c7de59f16fd2a00bfe5d83f9bdc GIT binary patch literal 173 zcmXr!<>mTtmLY}#2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUs3uQ`MIh3B}IwJ zsVS*>$*KC``9;~q1wgKTa(+sxep+f`Noi4Pd~s?{YH~?teqMY*QGOPXsb6Sd8lRS5 oRGwIr0+mfo(T|VM%*!l^kJl@xyv1RYo1apelWGUDvlxgO0Iw4-u>b%7 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..8f323baadcf6b54cc673b2248403db9db21b8d94 GIT binary patch literal 1059 zcmZ8gO^?(@5bbKWKgK&V3@b!HkQ@+~x$MBAy`cyx91%hZ(jp6D8F$U%+4cwBo@F<( zPY#^<0UWsIKk!4MzH(u2IU}T{>`7piZdLi!YgIkFt9)lN3E%v^_cR$X_K}@i4&i%b zMv{|Ef?^TSlPjJ(kpn&FD3QC7J7A%_+>iV`hyq~fbSxSntU~E_5N&N@=}G@j7L9R? zTR7_YQyxvCDNZRLeq;0Cl$6-RIoR2QtiVM7iU%5v$;zVVYMo?7T%)ODQ>m<;a~tU0 z*rcUKJ5ADbt&{X*6aR5TCUvrSQLYWfmCjN$alTe{c9iHWsc|PYM=9^+XidmmvR}x| zKja#=>c5V?=H$g|zT{U~%g?dyz&Ho271C>6>9ihUpDd`M;Va%jJ34+}JGE#=9dvM? zJ$u`R$4{COp-1gjBUWy+)d8>uR$jv!ag{Yr$A{Se9=GFW+_;BAziY-VWwah;22@pa zAmIw@E4=)DpEblEdiq20(@@zPDvws9W`hD!+aRA1b%e4WQ&!OUOHMcMKRgBc?(7pa z-Llg&S~}>7D__pe=3yiIwF_u@-UNVP@hP&8N!;r_rjp%+DqaXe|8o2N8t^1!by7283YZ_^z1+luHT;0DQ z{SBDNm?m3a?73b#5_GS(2fsU9+BtW9$hk{WYlT1e3Z^d;z?k+7JRWk-4{lE3D-;?Y AI{*Lx literal 0 HcmV?d00001 diff --git a/q05_forward_selected/build.py b/q05_forward_selected/build.py index 8816abd..b73e5ed 100644 --- a/q05_forward_selected/build.py +++ b/q05_forward_selected/build.py @@ -1,6 +1,10 @@ +# %load q05_forward_selected/build.py # Default imports import pandas as pd from sklearn.linear_model import LinearRegression +from sklearn.model_selection import train_test_split +from sklearn.metrics import r2_score, accuracy_score +model = LinearRegression() data = pd.read_csv('data/house_prices_multivariate.csv') @@ -8,3 +12,92 @@ # Your solution code here + + + +def forward_selected(data, model): + X = data.iloc[:,:-1] + y = data.iloc[:,-1] + l = [] + + score = -1000 + c = '' + variable_1 = [] + variable_2 = [] + column = list(X.columns) + for i in range(len(column)): + + + for col in column: + #print(col) + l.append(col) + model.fit(X[l],y) + acc = model.score(X[l],y) + #print(col, acc) + if acc > score: + score = acc + c = col + l.pop(len(l)-1) +# print(' ') + #print(col,c, score, acc) + #print(' ') + if c in l: + pass + else: + l.append(c) + column.remove(c) + variable_2.append(c) + variable_1.append(score) + return variable_2, variable_1 + + +var1 , var2 = forward_selected(data, model) +var2 +# from sklearn.linear_model import LinearRegression +# from sklearn.model_selection import train_test_split +# from sklearn.metrics import r2_score, accuracy_score +# model = LinearRegression() + + + +# def forward_selected(X,y,i): +# X_train, X_test, y_train, y_test = train_test_split(X,y, test_size = 0.3, random_state =i) +# l = [] + +# score = -1000 +# c = '' +# variable_1 = [] +# variable_2 = [] +# column = list(X_train.columns) +# for i in range(len(column)): + + +# for col in column: +# #print(col) +# l.append(col) +# model.fit(X_train[l],y_train) +# y_pred = model.predict(X_test[l]) +# acc = r2_score(y_pred, y_test) +# #print(col, acc) +# if acc > score: +# score = acc +# c = col +# l.pop(len(l)-1) +# # print(' ') +# # print(c, score) +# if c in l: +# pass +# else: +# l.append(c) +# column.remove(c) +# variable_2.append(c) +# variable_1.append(score) +# return variable_2 +# data.columns + + + + + + + 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..d5ebebd60ecc458a5bb6a0a4c3a126d726a4de3f GIT binary patch literal 179 zcmXr!<>mTtmLY}#2p)q77+?f49Dul(1xTbY1T$zd`mJOr0tq9CUkUmd`MIh3B}IwJ zsVS*>$*KC``9;~q1wgKTa(+sxep+f`Noi4Pd~s?{YH~?teqMY*QGOPXsb6Sd8lRS5 uRGwIr0+mfo(Jx6YE-BWJkI&4@EQycTE2zB1VUwGmQks)$2eP>sh#3IvyfPU8 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..daf02de1f984df8baced0c49ef04673dd091a09d GIT binary patch literal 2851 zcmc&$&2Jk;6yGn~8^?B>HcdZCS1lD7wQwlI3RJL9C|=-=0k9*S_#C31KJCfDp7Ldgall8Z#Qw0HZ6)kVy%7iyfgD= z=J$T@y*XMe=70NMId{`kl)K8BCy)9GeB~D?KmpZPTB@z83TUAFT1&Te)DnU~#Oc;PX3_<~lP=X;S!*DZi4{@Cr zd8wzJ)9kW6%*!}`%X`{R#ohv2VFb3pC~SuvuoHH{ZrFn}w({Zrn2{L;9)q!K3XE~J zr`y{gJEv6kF5&)_iW-}*aT!f9$(OYBL%9)(D@=eRxzF8*0}d)RdDQ6mJ`+vZ<}Q9I z&w2r8;tX#JE~OU+^~HU_B38W^b|iP&!gINFS{*;~x=eU1;^VID+JmojxnREkYKQsu zz>Jvnx|4!4JO6@gMblm|H$7qJXP973KE;Hz3om(*dyxl|7rHaTHYa2>?Tfi-yYNP` zcq@cS06RAuMyZ*XnS4DEseU#L;Usr2%}p@d){5`aXBKDjKGTRzi9zQ~1gwC?X|Nd+OWjRb^g_^s6eUJCz=; zjH|Bs-_S;tUP4k_!>9`~Cv+5xdr!TE&P9(~=;uz02a&W6z(H%q>+%4#iXk#I*gz2v zGAX%;PF+S%#=6ggiWVD4nMQ07OKvElh{OK8jD%?MY9yG;fd?+Ho(;t%*~Y(BHw0d7 za29n0UuGK;3Aq!_<2I_74?pAF&&6tlh{!}b8}*O37vjA%=7E_`|4iF)Uy{zCXr{XO z^hOwu|AUEjJ|I(x55`bg>x0w-7>HUQZ@s>hK>b`FYTylqQDSwO-{I1N&aVlKF6{}xf{o%NT`U!(M=$+VxbQNu_%jg z0>my3WnuL>-?-Iqw@!?g|LI9 zGn5}uZ)0~s-7S6pmdS;<_;rP%Oser%BaikjkdA4E@V3{kof$6L1R zOjvj(NheegD@|QIwh6QzF!uk#Cbr-y;`{{)6X}M6ixK=FwxRfUART!eP5f6N9a#rb zKgekBtK8}b7INxPpHuxN;LC~7!P@l@ zNGgxyO}YaI?M)nhia?=ct*DE~H_w{2rq)41xi|^8Cs9cup}gNy=ZzkQ9_pD?r|Q!) z==y;fU$2WYj^8X=*?2fbYtnCpD|l%^JI*j6*g~8m=$PxqI#%~J0OF^I0J!gw047!s z;YL@Gdv^24B{u4nf!K7MfVH^e#CgZTJ444Oz2G=hywV;qglmam5~Cz`kk~_FKZ(_( zk!X}$1=U^}D=G7us%e-Re6yyW^i)P;vlDm`ol=nZE@?tRO@DYUEw5(rpQh%ul3Ku;nN{=H{tdxGG=2a8 literal 0 HcmV?d00001