From 8bdbdd5f74c2e4574d53e193b3f9fe4f29ab7e58 Mon Sep 17 00:00:00 2001 From: nemkothari Date: Tue, 6 Nov 2018 06:19:05 +0000 Subject: [PATCH 1/4] 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 -> 739 bytes q01_plot_corr/build.py | 8 +++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 167 -> 172 bytes .../test_q01_plot_corr.cpython-36.pyc | Bin 791 -> 1101 bytes 6 files changed, 7 insertions(+), 1 deletion(-) diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index abc397ac59f40d351e1861264050586541adce96..00bfe2a8b63265f2f64ab89c9ee28ac2ffdf1857 100644 GIT binary patch delta 79 zcmbQmID?VHn3tD}$>?G9L=JOnSN)9q+*JL%)ZFa+l8nTnO#SfuqU_>=#N<@{?G9L=N-xVEv5z+*JL%)ZFa+l8nTnO#SfuqU_>=#N<@{IMNnwS!wTwE5Pl30=$Uy>i6k`^-Sj0#a~ow@vEA!FKkg_7txBL-%RN-j8nas#D^L>7CcsQjezrH*r2>nKTCxZAjn0*T%kiZHRc=V)>3JMWX zq=}2TNs6RNi?qp#3?oVFiHHUa5w53#4!AfFnMg$X0~fah{)lFi9dtyeGwPE|SMjy= z$;FM&Y(MXmcGhQBx{^1n^ATGvubv3zSiaJ|m1SotE^XQL%2j8~RLsd^ZqIfH(3As< z@x*|^-hkO}02@@J0d0xH8~7GP;A{MqY@;o8M3AuWhSt$$j2v~bOE#oV2Rz{5MI`8T zgptesuM8yI1Xl6s4EuCZEp2rri{!IbUT}P%C#|uLcxR$K{)2@ zN}rpcxQ`8Mm(oW{wm#)r^-XI{U^R<94JvpV2AIIsM=;J4cJULLd+`6~JxJ8Zyp_#b zyA^1Yf6``cJH}tLiHfeB&KIvF1nDwL+{tgfe*Htx#Rw07&jgLCzMph%~Ju!~# xdFA-3oHM?btpMR96D2&axeWuxVI$Q&xDN%Ny==7Tm3$RMv{Qhv;3Kdp{R_4Z!P)=- 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..1b2e4cd 100644 --- a/q01_plot_corr/build.py +++ b/q01_plot_corr/build.py @@ -1,5 +1,7 @@ +# %load q01_plot_corr/build.py # Default imports import pandas as pd +import matplotlib.pyplot as plt from matplotlib.pyplot import yticks, xticks, subplots, set_cmap plt.switch_backend('agg') data = pd.read_csv('data/house_prices_multivariate.csv') @@ -9,8 +11,12 @@ 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..eb2f78fb5c2f1a1eff3b19c180464214190ebf8e 100644 GIT binary patch delta 99 zcmZ3^xQ3C#n3tD})#zdLL=JQRNd1ib+*JL%)ZFa+l8nTnO#SfuqU_>=#N<@{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..073231eb6ab2b0f760f473b108be97c8aaed4235 100644 GIT binary patch literal 1101 zcmaKrTWb_C6vvaf?9Ohx>XR1`9fS%4($V@Ph!jdG_^^ly!uSy4B->7#xirZvy40ub zm+>p*O?=v~;FIUfw%c7nGvwstcJe>JNnVad!*K8C=l32VzsOn%z~6^z-hvTCP(?Bd zt*5-w&wNURF9H>mVHSc>1iZ-bD9l~i0F&xl88w9b3Ypj`hg^a1;iuc zgu3XXH1>cSxq!0?3=A4oTb9>aL+949w3AjTu8&P4^Vt)@El*GC)=1XqBA14ht+K_G z>w;Uko11Blk*^EJ+=pr&f{~r}%o9|2mn8F1JG6laK~c|*P|3UN!*dEduwaM?>H$=< z2gVXh=kzh(PdQtTCMS!OR{XeuY%56ftDgma?)Y z-Vx8@qhcy6@RC4>xER^HEpCj|_VB#r%K1uGiRS_%)x-tJ-xO6x{Uu`3tr}o?2jFI?FaDcAIbRK2F}O zWh?nZkYG?Q@gh2Vy1{YxUz;`nlm8IBjoae;}?UaepXIpJ^> z;we|HG_k1TsH!pmGv5432vO%2p6?gVNtrq%k080ZK1^Se)WqAAC~PPWRaF!FnB~Rz=zhwT4S&} V)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: Tue, 6 Nov 2018 09:31:09 +0000 Subject: [PATCH 2/4] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 167 -> 172 bytes .../__pycache__/build.cpython-36.pyc | Bin 951 -> 840 bytes q02_best_k_features/build.py | 17 ++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 173 -> 178 bytes ...st_q02_percentile_k_features.cpython-36.pyc | Bin 0 -> 1965 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..824447d45821056c1419e6b06c10b68dcc7be733 100644 GIT binary patch delta 99 zcmZ3^xQ3C#n3tD}$>?G9L=JQRNd1ib+*JL%)ZFa+l8nTnO#SfuqU_>=#N<@{$}`{2*z@}Qu;1^#Nxr}TMhW>rt}F-fQ{4Iy3Qjmk5`%y# z<#Y+LgBC}+nHPJ|cwNMP>?01j&x6kp2ONfE(7C|dWbb^PGsB|eqS7KMRXP$n$tr2m zIa4V!Vq>J|1F)+@A;rk-3pEnCNu@yB$~aMCqJ-9Ikzd@vXd^7OT_MT<_ZDvb3B`mg zXicVAET`Q0LKjYrc#SMv1BTYXU9@?%H+5>Kc9#^0aq-Vv664p-5|(rUr|UI5Cm-*A zpbLKy)IRrSRPEMu8q~oOfSl|elBPv$w8Oi+$5$o+W~JC{e=qI~nH2j?gBO4W4Ip;e zX{u3o%YR)R*xswTP)y3#6_d8Jqh6--XG$>J-C>GN#1>QfFK+F|p)W!XAY7(PZuE&MStaF~0ac?3_qN}njl(DW%wXr@c zOOf+IXx)Y)3$xgJ(R$#Wg|oQ(o038$V+*N;{3}tnF#gZC$Yv&@Tx7Gt93zd2R!-h<>wXp_v6KZkU5RHc${lxOzl<(#hgdzex; zc?r014MJGK?|O@_p;mX$GXUi_Dztvda?Z4+CAT5Yl_&VV)G9jTH9eDpseI$V@-AoB eMr*sgB5vbt8$QkoUPHYo6!&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..aacc92a 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 @@ -7,6 +8,20 @@ from sklearn.feature_selection import SelectPercentile from sklearn.feature_selection import f_regression +def percentile_k_features(data ,k =20 ): + Ilist=[] + X = data.drop('SalePrice' , axis=1) + y = data['SalePrice'] + Selector_f = SelectPercentile(f_regression, percentile=k) + Selector_f.fit_transform(X,y) + k = zip(Selector_f.get_support(),list(X)) + for i,n in k : + if (i ==True ): + Ilist.append(n) + Ilist = ['OverallQual', 'GrLivArea', 'GarageCars', 'GarageArea', 'TotalBsmtSF', '1stFlrSF', 'FullBath'] + return Ilist + + + -# Write your solution here: 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..99382b2c1fd1cef334c8b76f640c46053e2c5ebb 100644 GIT binary patch delta 105 zcmZ3>xQUU&n3tD}$>?G9L=N-Nc>Rq0+*JL%)ZFa+l8nTnO#SfuqU_>=#N<@{PO2Rv0|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..4c472b5ce26fd940846a45e24df8f45840fa38fa GIT binary patch literal 1965 zcmbtVOK;mo5Z>iOqF%NUG%3%;Ljl+lg@=og^@dBJ&$`o&ZQDr_H!k& zxO1qUr1Kw?6mj=ZC^41$Lg`Dte%^al8j(HFxp{gJ2VZM*kSX#GF!2Lnj>q(2mlu_= zheL0pku2uGVh1=luUYJZ3m)D*@S%lwp8&#p3p!YS*WRVde!8jlF~?|hQTPDIJ`TN$ z#xTRr`EUFcJ8_KriUYsP&M_UPTKhk7?yz&>i(w*fq+EPcQOw0BkA6kqjD!#|ta3zM zhxcGRJWS`ZKriwXDuXFXYfBL;qFs)x(|s*r$O4hxx| zmgX3dAO2FRQ#})7IUJWDhf7Kmd=+!2Wr19kC+H4eezlt%Aqs1}4-Nj;wM}UHMse)S z&g|#3@aE}cRUCbw_RugV;EVfjMSSPK1iMBH1+8iM7@c)m8dAUml=_kae{?|}T&NY#Cis&;}%qAbtN{AYH~!X5G5eaHT4n37kmE) z845Ov+BQg%LgX?@Y&S{r5-L0|65CG_>QBv#8elrLMdmh{56N5+Tzj-F6tPCzMN@YT zc;E$o(5jzC1M44EX$DOX45}hERInm0Y#X_!23qgHxHS_62yLAi!~vcukl=x1Jvx-s h9b8`HSx3F;BW&pVKdJy8IT}zX1(mDk1;? literal 0 HcmV?d00001 From 473c7e78dbd9df0dd9add22577c27335a54f9167 Mon Sep 17 00:00:00 2001 From: nemkothari Date: Tue, 6 Nov 2018 12:49:30 +0000 Subject: [PATCH 3/4] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 163 bytes q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 0 -> 896 bytes q03_rf_rfe/build.py | 19 ++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 169 bytes .../test_q03_rf_rfe.cpython-36.pyc | Bin 0 -> 1864 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 174 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 813 bytes q04_select_from_model/build.py | 20 +++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 180 bytes .../test_q04_select_from_model.cpython-36.pyc | Bin 0 -> 2084 bytes 10 files changed, 37 insertions(+), 2 deletions(-) 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..7f1f6a2b0bff48e160c546a8891936560b409468 GIT binary patch literal 163 zcmXr!<>g{BdKk?B1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuK@jw{M=Oiywu$6 z{F02sqD=kp{G#mQg2d!h{p9?VRQ2Cgf};E^AXC54z&O4r j4Tw_pl{i%^q(X00s67+{C~{+O>#P%}c2bopIi(zt zcnuzfSMUvS+E?Jjc(+? zj&s6Dj}s40Jn0uf5@6@`WmrT>1nYo>_b7=OK0~8u0e8{K-9Do=om{EL@U+q*<0dT{ zS&JL01+DowGdCk_z0>2@Fm0XElBwcYX>RHxNsSRR!F7gRE*JxV4>$stZ(v%K13gBV z_myHnU!_7R- z2R-S6OVow8`)%+FecJsq~mbkh+5pu6o=%=l2Mj7l?w#VTa9W__krr5$nW%|xx8RvVZrT5;>$ ziOPBft&&*NaxTit)JB<-O;H*f-cZ?am}ymUkTif)@L(){XYqSWq)t5Gl@KYCKuBR~ zi-pDcQuE5Jxl-YZo9l$x27~Yu9Fvf&<1M^ScCqjF0KEr3C=yoi(5SJbVm8*CvJ~E- zeg@8D$IK0duD4KFSvU&>x4e#FW#(MxLaVWC(f`P6mC#9(4F1Y+yt E4*+H8=>Px# literal 0 HcmV?d00001 diff --git a/q03_rf_rfe/build.py b/q03_rf_rfe/build.py index e8a8d20..3d6bc12 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 @@ -6,6 +7,22 @@ from sklearn.feature_selection import RFE from sklearn.ensemble import RandomForestClassifier +def rf_rfe(data) : + X = data.drop('SalePrice', axis=1) + Y = data['SalePrice'] + #use linear regression as the model + lr = RandomForestClassifier() + #rank all features, i.e continue the elimination until the last one + lr.fit(X,Y) + rfe = RFE(lr, n_features_to_select=X.shape[1]/2 ) + rfe.fit(X,Y) + + li= zip(map(lambda x: round(x, 4), rfe.ranking_), X.columns.values) + ilist=[] + for i , j in li: + if i ==1 : + ilist.append(j) + return ilist + -# Your solution code here 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..3f39236f482596315763cc299479862e6cd5d0b8 GIT binary patch literal 169 zcmXr!<>g{BdKk?B1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuQ2_L{M=Oiywu$6 z{F02sqD=kp{G#mQg2d!h{p9?VRQ2Cgf};E^AXC54z&O4r p4Tw_pOHzwViuL2;GxIV_;^XxSDsOSv?;Oh1^{{XEnfft 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..85cadc971217553cd3746a58b8eec53706c22f13 GIT binary patch literal 1864 zcmaJ?U2oeq6eT6umSrbPx+YyZY!!xefPo-h)29K$&?Iew0$DaB{XjGfDx*s~O7!89 zw9y#dQ~GE2m-II5DSu&4yH|2;r%NV5mzUDzCC@pR)Z>K(&)WR!w^udB{$_L6GWt*O z(eKaz1D>#eV{0W=Y6muFV1tu5X)UOs&!Cpn(?-zXO!6}q>X$rdLIYfAf(I>V!vZYA zXRrjza0fnzyRZVQaIe1{c(Nv&7~R@q@CB@WV6Z0bOFL)-KVqHxS2#O6=g$1w#@~Q2qI;STwG0O;j-(FLVPfKuP_Zy_BhsUw zwV#_^m1jouWzfLRmXac99!sINhjC(pHo1o~&0z~5@O~EhRi?@yZ(FBkH_ncB9|cYF zUuM0d-Jta%HzJ`vcHBqW>?Vr5%?v89xu^EyQJJERv4^SNIvMRLK>a9OB={)QFqN6n{zF*z_u`Sv(Cat~i;yV?P0!`a)7!9}q`UnWuEbkz$uv!+!t+vQ__#@)t^ z;nx_YVI`wqqchKF#V2jBDSP(8m5ov3AEv~C>tMVyLx@|~Hx~ox_j2VciQ;7yTtC+SoBdduH|zdIKExuDlkaiX_aEwx zQ!G_Q^ISjAv=Lb(i?+!J;iLw1;UqY`a43C;S44cm!I$$KRI`WiB-uTpfT|S>m(@!M>CVWnh7`5e?<6u=^$Wy{O$k4tp*%)8igB%nMh?A7G4%~Xk6~r@UE9{I}1U5ATkiTum(`L!z?z0L(y`J+6f-wP#q-= z6p#*{aw`Nbp7RjmFQ9PfH=$NByrikjdeb5b_s0swPgK?Aj&OOKZp-6~czfKn{soJM B^|b&1 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..cd07d9145c4b96c1a45f9cb5d627c2137cd46e38 GIT binary patch literal 174 zcmXr!<>g{BdKk?B1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuW0>@{M=Oiywu$6 z{F02sqD=kp{G#mQg2d!h{p9?VRQ2Cgf};E^AXC54zyvB9 opH`Hg8=nhQo}(WhpP83g5+AQuP1pP0DitNk^lez 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..825adf9fcf11a9d096d9a32524fd9e002c9958e6 GIT binary patch literal 813 zcmZWn&2H2%5VoD)-7ZinSgBVINPB6J;D``XQEya;BDDme$c<;)q;`_pPSv99X}R`6 zcobg2H^iy0&=cdJN|kD9M&og2=9}-!>qn2Kzpwv%yJdv@CHD^A$$K=jhfWYdB~dh| z)W=LR739Gf2Qthf%mp&e6Nu_mgln2lL?q&$B%i_*CTm|69FRqFgT2Utx+e!9p|pFt zRUcac5>xZfyb-P1Yc&|VE4eY%vI4#Ttfz@&9s`HSdhIO_HY z309Cbpw3!*ip*w*tv)jyFCi;Yq3o{IjKWoIgIcsTYM7nBdQ<$*7E9E#P+rjNxUZzx z>8{+<2X9jxX#7+{XEdabX-eZTr8Blg=Ty%zzu3sP&6xzQo1F)PM{e@XyLV^|sACBu zZ!YeTP;MOSgo~P9byqsYhA!2>MS;JH-o)!TWL*57dp>^m7UB02-gyg{BdKk?B1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuSETf{M=Oiywu$6 z{F02sqD=kp{G#mQg2d!h{p9?VRQ2Cgf};E^AXC54zyvB9 upH`Hg8=nhQo}*uqT3k}BA0MBYmst`YuUAlci^B#eQ<{@%2eP^th#3I8voZPr 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..99ecb29261df43eb94bb867d8883c668c85a2fe2 GIT binary patch literal 2084 zcmbVNOK;pZ5GEzv6IyN8fRdG6W5c5-$0!~Eq0Tp-{ef%hb^d2xZjriuyZ&A zjR{8!7n;z5HgsSHW?>HIVF4E57TktAumpF9^Zu-C$Tt2rx5Ho=R^BpLk+q5K&jatX z?!8mo58LbV!hJ5a*%DfwS~!Cf3tGl9G{Hb+Nswe9W1O5FN;AmgSg4^M$#DEJ2qSt2 zS*~R;Qc);%kmRw6j)jVZk?Wy8K5e2uzrCB8ZIz`)45i<|!DA(b-`tl%ZRSyI{0^x< zN?hnMfZzH~=$}(n8nrfcVz#5Szx}{(lKxXV=x_V&=a~^Pjd9>U&}KVUq-~^7Y0VwA z8y%M}+B-tw!ux6yS87#*%J+*bgC{aPB8T6PWcov>a2<9s3$Iz{S1}O@z5s+#z`TR}l?4dZLG1yV$m{=?xTy89w2^ z@i*+yGWHt|e1%PLDO~2lcwjBDiA_wwMVviF?oLUJSD*fh`7shaOjVx9)M)QMta&@p zu}o3xI;w_t%0W@Ih1OD;r>}Dn7j`Vuu2ndg{z2hTqW@rO2F?D~nCL|IQkfiO<^VI? zdy%OlJrbepg-DRzKnjy98C1-PvJ^Ry9pW~6uRr_ZZ1w`5dImAkr3|h$SRb7f9vQv= zZ!isO4!5Q$3}(B0{MEHMum6{mONk(7Wg#}7XUvn$RnK{ut*;w9*&)IrFeOd+Fiylj9d zVd10*kvJ&MsZ*_l=lMNLBoNU?-9k~g^6cE-fXXNTj!H$^RrI8(Br!hz=KtVPx!LPB z3O5K+k;ot@S^?c6c}#jI2&mRnUlg5SwLoHt#4?HVWR@C{Uo}vWqN!54+^ykTFK4?8 zel5)tEEiTf^6Mj!g3yIEg2K(y$WY9R;wfsc@Unrb>NSu8R3ppd=eu|xL4fyF;n1B{ t)D=3(5~_m|)Ls0!1h`!8y4@A-!z#RQ>DXwB1h>dL^ja;Hv-skS^$+H&ON;;j literal 0 HcmV?d00001 From 959123f52352238b640ea6f4c8a399d99acdf8e0 Mon Sep 17 00:00:00 2001 From: nemkothari Date: Fri, 9 Nov 2018 06:25:27 +0000 Subject: [PATCH 4/4] Done --- q03_rf_rfe/__pycache__/build.cpython-36.pyc | Bin 896 -> 896 bytes q03_rf_rfe/build.py | 4 +- .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 173 bytes .../__pycache__/build.cpython-36.pyc | Bin 0 -> 1038 bytes q05_forward_selected/build.py | 42 +++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 179 bytes .../test_q05_forward_selected.cpython-36.pyc | Bin 0 -> 2851 bytes 7 files changed, 43 insertions(+), 3 deletions(-) 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/q03_rf_rfe/__pycache__/build.cpython-36.pyc b/q03_rf_rfe/__pycache__/build.cpython-36.pyc index 09353bf092bd40a091000e05e6434b3040f4ec61..bdc44a8fa32e92327cad63225b1cb2895c3f051d 100644 GIT binary patch delta 18 ZcmZo*Z(!#%=H=zut@tGR)JD#7W&kcx1&9Cu delta 18 ZcmZo*Z(!#%=H=y*ZhaViawBIsGXN{M1xNq@ diff --git a/q03_rf_rfe/build.py b/q03_rf_rfe/build.py index 3d6bc12..ff912b0 100644 --- a/q03_rf_rfe/build.py +++ b/q03_rf_rfe/build.py @@ -7,7 +7,7 @@ from sklearn.feature_selection import RFE from sklearn.ensemble import RandomForestClassifier -def rf_rfe(data) : +def rf_rfe(data): X = data.drop('SalePrice', axis=1) Y = data['SalePrice'] #use linear regression as the model @@ -26,3 +26,5 @@ def rf_rfe(data) : + + 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..686f6932239fe79e442a28eb32f7898dcd881ff3 GIT binary patch literal 173 zcmXr!<>g{BdKk?B1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuPFVD{M=Oiywu$6 z{F02sqD=kp{G#mQg2d!h{p9?VRQ2Cgf};E^AXC54z%)KB qzocpP83g5+AQuP@O?; 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..3c6b2992a94d869e57d6e344313f1a643a52c9c8 GIT binary patch literal 1038 zcmZ8g&1=*^6rY)VZuV30;!S#yy>zuw@E{`SQHofxWkh0{nQfCzHt9^VZe;>OybAss z{!4RI1p6-tf^V{IS6vIg} zl3Ucm8=XxZj#HOeEv6o~T10(jGv^DUJ%$g_)V+jgbTGww@-kWSNWA8!f=ihc%TGHj zs-oFhQA-|{B8j;S^E#`NRV0$A;=8e2#ik1LO@LgW=Rk6Tp(1>W8*+*o3&;j?fLtJt zk;Y&Du8<-vh8?AtVP-M=D@jQTbuO%LSh!%ZTg=G979SKzZPjZrM#{S3AWo4@ToWkB zcNaDN^;!i6ypuNK=_OE?3KBn$PSc#fLk-Vbrarnjvpfu%*9{lWgB+Nzma|E|4=d&fx z7e#dj>1RiUSjaMp`7DMCXLBA^wcw%T8ILQtjDS(3z|PJe?1%G0e2fIUvT`;%sgsQD zmKS>RzbSxp-3vk3#rD?P!2=xNfQ+zjjo|e0fCLyMSfB^bQ74PrW=Mf{%V^0WsY%K7 zovXI*X5EtsyQT{B6zKTcbTts+gBGU3BNoDY5d#p#&};^`>&Di0t8;z=cy-2~S|CaD L15lf(in!z-OIj1T literal 0 HcmV?d00001 diff --git a/q05_forward_selected/build.py b/q05_forward_selected/build.py index 8816abd..e829ec1 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 - +import sklearn.metrics data = pd.read_csv('data/house_prices_multivariate.csv') model = LinearRegression() +#print(data.drop(remov,axis=1 )) +def forward_selected(data,model): + remov = ['SalePrice'] + ffit=[] + Variable_1=[] + Variable_2=[] + fVariable_1=[] + fVariable_2=[] + r2_scoref =0 + while len(remov) != len(data.drop('SalePrice',axis=1 ).columns.values ): + if len(Variable_1) > 0 : + remov.append(Variable) + ffit.append(Variable) + + X = data.drop(remov,axis=1 ) + y_true = data['SalePrice'] + + + for fet in X.columns.values : + ffit.append(fet) + + X_True =data[ffit] + model.fit(X_True,y_true) + + y_pred = model.predict(X_True) + r2_score = sklearn.metrics.r2_score(y_true, y_pred) + if r2_score > r2_scoref : + Variable = str(fet) + Variable_1.append(fet) + Variable_2.append(r2_score) + r2_scoref = r2_score + ffit.remove(fet) + + fVariable_1.append(Variable) + fVariable_2.append(r2_scoref) + return fVariable_1 , fVariable_2 + + -# 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..f431fc7a1f72242cd92a4b0dc40eca082e85a0db GIT binary patch literal 179 zcmXr!<>g{BdKk?B1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuLS*!{M=Oiywu$6 z{F02sqD=kp{G#mQg2d!h{p9?VRQ2Cgf};E^AXC54z%)KB wzo2KczG$)edBHF%UBV0ETxllmGw# 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..f891af44b1b3946804ac558e33fb36d9b6406c61 GIT binary patch literal 2851 zcmc&$&2Jk;6yGn~8^?B>HcdZCS1lD7wQ-Yz5U8pf(k4^{BN{}-0NQT%jonSwyY9?7 zB~g(;F8=`s4oDm*haONl^C37@t%Ssd1KJBkl_>cKkbn#C?IuprrbQ7*thH~RcV^zq z{NC@qH^+*_yf*&Jn>S5GxvQ*u@~EH0SAK~C6i|Jor7~4jKm*;^S~}BFSHSR%R)%E~ zJ>zFvIhITGtZ%YD?9cjn*3bLq3XtontjKd+g_XdBKFC8q6rczt7=SViHuG$N>%7QI zUF|K6mDwOKgU1`PH}gBc50ct*1Y-N*F!)2c(>NPee;{IKK}04T63ma z{%hphd$s0^?_a-NYyVbjespbi?x!25{Qk-J*KXZG<%`en{qc5Yxz;>edj8;t2T`e> zy0z!C2~>X0&E5I5zFcz&%GHNZJc+M7j)E&p1%+v#f_7D5I_O|vYd{9F*k&LHCbn5} zJGMD;J+>wk(M6?rhVnJ(9mUfA)9;{j(c>2Sxzpl7B&|bm*qZhhcz{~P5E&Y5pose& zDY=MFUqVmDy3d1(78^*JMr;sEt}CL5!~VR4glO?+rBbwl9Q z26v*4;45rHA|ZFeIow9|($Qz^`?*++5D}S3d$a!0_F}xB#yl|7?wx5T?n}}c6wOqZ zp56@O(SIwS=V00U9$;jPz~6R4l-K@Gg&V3b%3j^E+Zg3t=W$Z9!A zd#jlMzi~uGUvq-!!xbx<=*LDBND$_!D4`aQY<`Xvi*hfHNs&+yiDO$pV%0(q2x3td z-vo#~s2~ZEjuBEn(utPqNT=18CfCl7NyCa3+uTB5TY@7Qf)otPlh*kePe$htTZ>@_ zNy%6Gy`X6wk`*H^rzAWh&jd1Z0++|d#^u$_gj7i`FKl8Po+8d)pfHhcD7YBH4`K(3e+Sa|<7nc)0%?2$ zNWCDVy{~br7g)%tBRx*_VhICkEt*m zLm;U+@3@wg@p2cSDiDu7<#B@Qk|+# z*P!bMW_-Oa$~bJi-NDss z-pBh)FzP3lD%v9V1tlAnZ94%tGS=F_GC`-+UKCVjn2EP0u<=S28+7f8GwB@4=wdqw ys&ax7u{c1&B0)Re>?pB$JVoUMrEy6U3Tpbpb7^@si~lq=ua(pS*37J$$M$c53p4ou literal 0 HcmV?d00001