From bbf1f8693ea9da41fdd3eea14299615d34711fb9 Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Fri, 10 Aug 2018 17:13:20 +0000 Subject: [PATCH 1/8] Done --- __pycache__/__init__.cpython-36.pyc | Bin 165 -> 151 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 179 -> 165 bytes .../__pycache__/build.cpython-36.pyc | Bin 568 -> 452 bytes q01_load_data/build.py | 12 +++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 185 -> 171 bytes .../tests/__pycache__/tests.cpython-36.pyc | Bin 1577 -> 1563 bytes 6 files changed, 11 insertions(+), 1 deletion(-) diff --git a/__pycache__/__init__.cpython-36.pyc b/__pycache__/__init__.cpython-36.pyc index b4b72099455159189764a0ad76aa1fabbc62e96a..a93ac166cc19c3dca568fa7adfabc34bfdce715e 100644 GIT binary patch delta 55 zcmZ3=IGvHhn3tDp$?@Fii5%w2F8UeyxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@rU3Oh6GH$1 delta 69 zcmbQvxRjB@n3tD}Z`Piui5%vJLHeP^sYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@cE0UPfa$^ZZW diff --git a/q01_load_data/__pycache__/__init__.cpython-36.pyc b/q01_load_data/__pycache__/__init__.cpython-36.pyc index 92b3ac2d3dd2682028775eba5dae0f9658f2aebd..e74897332c6bf886453fef0395532ec2853b0642 100644 GIT binary patch delta 55 zcmdnYxRjB@n3tDp$?@Fii5%w2LHZf_xvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@&H(*G6MFyv delta 69 zcmZ3=xS5f|n3tDJb=ID!i5%vJ3HqVMsYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@d90V}B)82|tP diff --git a/q01_load_data/__pycache__/build.cpython-36.pyc b/q01_load_data/__pycache__/build.cpython-36.pyc index e27baf631ae2be11ac2de9e6f21754e2497753d8..81e4cb5718f32251128ed40ee480dc147cd14b5b 100644 GIT binary patch literal 452 zcmY+Ay-ve05Xb$Ilqw<&EKtD9t0}^FmKng?T<_sk`ad2GGqB50NVckmhMAJb{*+CC=(2$Q00LHUF#rGn literal 568 zcmY*WPfIH?5TERJ>r(7N5VauK>t0;NYbk<{cX;r;h?jzt*(Tbp=_V#wv{Fxf-{YPA z4t|nc1;MZ2$w{lCf!}ZbW@a)uYPVa{|4)M#0C*;Rortt!g54zIz?p;r;}MVl!64%7 z46?>6Mc{PAf}j&_#Do)qJtlH6VRKlp2R3J%bzl;$?k|>h56Ii-1Wr1z9c1%Eu7wzN zNbh%UP3c5;rfSo*O4hDaRd+0m@QHQk#8>k$M8FxrrbKg?z=F(-oo37@Qr!we3cGs* zlTiHaB0smn*c^*-X~*K))`h_-RwY*XFJZ5p(z(*28fv2^V&rVDvEpclS9Qq+|8(a! z2ZuwckPkUJ%!|5|d|%Ie+LJgfIQG}VL-?EcTJ+zGVdU5O*UXeS%ucSr++*MmP2mzg#|PMNMku+do=0!U$n05VhDA+ht~h ibSm6jJ;|(-x%7Rj6P9F_#nRqX@mh+0Sg;M>oW}1D6OCyA diff --git a/q01_load_data/build.py b/q01_load_data/build.py index 69d7209..a0fb9c8 100644 --- a/q01_load_data/build.py +++ b/q01_load_data/build.py @@ -1,5 +1,15 @@ +# %load q01_load_data/build.py import pandas as pd +path = './data/excel-comp-data.xlsx' def q01_load_data(path): - "write your solution here" + df = pd.read_excel(path) + df['state'] = df['state'].str.lower() + df['total'] = df['Jan'] + df['Feb'] + df['Mar'] + return df + + + + + diff --git a/q01_load_data/tests/__pycache__/__init__.cpython-36.pyc b/q01_load_data/tests/__pycache__/__init__.cpython-36.pyc index 2a2dfc72b54611f7a4f5a7734a9c697f606c0089..7506925e70340ab598f4e64ccb71e4a01251d780 100644 GIT binary patch delta 55 zcmdnVxSEl}n3tDp+40=yi5%w25&9YVxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@o&W(L6O{k} delta 69 zcmZ3@xRa5?n3tD}ZT6n1i5%vJY5JkXsYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@b}0Vxg{6951J diff --git a/q01_load_data/tests/__pycache__/tests.cpython-36.pyc b/q01_load_data/tests/__pycache__/tests.cpython-36.pyc index 76e04c8a5e2c476c2fba795d8bae25fd09cc88ed..eac33993b808a7bf07f9eed508e6433efc88a816 100644 GIT binary patch delta 58 zcmZ3nA2AR#B cXP4v`=;s%t=EWBjn+a From 43220cfb3c2478c91f5f539333ddc866eb19b1fb Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Fri, 10 Aug 2018 17:27:21 +0000 Subject: [PATCH 2/8] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 180 -> 166 bytes .../__pycache__/build.cpython-36.pyc | Bin 626 -> 738 bytes q02_append_row/build.py | 20 +++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 186 -> 172 bytes .../tests/__pycache__/tests.cpython-36.pyc | Bin 1355 -> 1341 bytes 5 files changed, 19 insertions(+), 1 deletion(-) diff --git a/q02_append_row/__pycache__/__init__.cpython-36.pyc b/q02_append_row/__pycache__/__init__.cpython-36.pyc index de0cf6163be25541da218f6f8a0c4d005729c09c..8945c40ed10ade09e86f96b49869cc011081e571 100644 GIT binary patch delta 55 zcmdnOxQvm*n3tDp$?@Fii5%w2!TK5bxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@E&%=36Mp~z delta 69 zcmZ3+xP_6!n3tE!c-Ee%i5%vJiTa_%sYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@cU057f?D*ylh diff --git a/q02_append_row/__pycache__/build.cpython-36.pyc b/q02_append_row/__pycache__/build.cpython-36.pyc index 508826776138177582df97d666bb284c1e1484b0..be5ddf66265917b69ac1e825ebd494915da636de 100644 GIT binary patch literal 738 zcmZvaO^(wr6oCDcr0LL>S%Nr07LyDE>_!L)Gz%m~NFX7FMdaqWod!G3*r{kyDVRC!38*ix2(7VD_+u$G$Uc_z4tlx`?K?8JU;mOOMm>%2>DHJ4P28KDDEjLAV3w# zX>VE1ddqW;mZ?C8c}NNHJc0niZzLZ8eMge$4|1YKB4(&F|Uo4#i9neN+R1`q~~s_J!`-ZUtySZa`)YItf?ImkW?kG}ctIY_rSblVVp&Va?}kx?Ctoo3)?Z-56pP_W%{4 zF&*tDo6v*(oKSm+dr9o0T^idtVE1e1nQ{5Exs_|t8m$)7^uL9qcYc+$ucN<0JHkkP e^uEVB6ZKGg=6N%RgapX6Uq)Tap3e6G8Xf<2Lb zK|qhV_E-L@>q1t(Yqq?p;=&U==0kMYgpHiz3}MFuu=%@)Di_zT+szf8MbpC4(58_k7ey%CAwzRG>Lr`*2YrH^)Xa!mN#E_ z;b@YG4YFo|Mg diff --git a/q02_append_row/build.py b/q02_append_row/build.py index af3701d..8138df7 100644 --- a/q02_append_row/build.py +++ b/q02_append_row/build.py @@ -1,11 +1,29 @@ +# %load q02_append_row/build.py import pandas as pd import sys, os #sys.path.append(os.path.join(os.path.dirname(os.curdir))) from greyatomlib.pandas_guided_project.q01_load_data.build import q01_load_data +path = './data/excel-comp-data.xlsx' def q02_append_row(path): - "write your solution here" + df = q01_load_data(path) + total_jan = df['Jan'].sum() + total_feb = df['Feb'].sum() + total_mar = df['Mar'].sum() + total_grand = df['total'].sum() + + df2 = pd.DataFrame(columns= df.columns) + df2['Jan'] = [total_jan] + df2['Feb'] = [total_feb] + df2['Mar'] = [total_mar] + df2['total'] = [total_grand] + df = df.append(df2, ignore_index=True) + return df + + + + diff --git a/q02_append_row/tests/__pycache__/__init__.cpython-36.pyc b/q02_append_row/tests/__pycache__/__init__.cpython-36.pyc index dab3ecac755f4882f0d0d63dd70ab57f6fb428f8..dbb55f4f387f64f56975a3db77fc5c34cc18a037 100644 GIT binary patch delta 55 zcmdnRxQ3C#n3tDp$?@Fii5%w2k@^|=xvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@UH}1C6PEx0 delta 69 zcmZ3(xQmg)n3tEUXwIIfi5%vJ>H49?sYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@df07F(8ga7~l diff --git a/q02_append_row/tests/__pycache__/tests.cpython-36.pyc b/q02_append_row/tests/__pycache__/tests.cpython-36.pyc index 742ee79571b722fe1fcab2f42f1dbcae23a14bd1..e018f7220f5fa2ecc6da93098879bb0971e387e2 100644 GIT binary patch delta 58 zcmX@jwU>*-n3tDp$?@FijT~ngmBaKi@^e%5lXEIlQgc)DQu6bX6ZOOMi?WLg5|e@A M`6;QJ*_d3J0agtZHvj+t delta 72 zcmdnXb()LAn3tDJY{8zWjT~ng4O8?(i&Kk=^%IjaGK(`(vx`fUiV|}Z^D-0j^j%Vm cvrF;|^z#c+^WqDN^0QKtONuxDV02{$0G`+y%K!iX From aa523f48adf1c297d0b867af9059d32d574c81d3 Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Tue, 14 Aug 2018 08:58:20 +0000 Subject: [PATCH 3/8] Done --- data/scrapeddata.csv | 78 ++++++++++++++++++ .../__pycache__/__init__.cpython-36.pyc | Bin 182 -> 168 bytes .../__pycache__/build.cpython-36.pyc | Bin 888 -> 572 bytes q03_scrape_clean/build.py | 15 +++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 188 -> 174 bytes .../tests/__pycache__/tests.cpython-36.pyc | Bin 1396 -> 1382 bytes 6 files changed, 92 insertions(+), 1 deletion(-) create mode 100644 data/scrapeddata.csv diff --git a/data/scrapeddata.csv b/data/scrapeddata.csv new file mode 100644 index 0000000..eaa25bd --- /dev/null +++ b/data/scrapeddata.csv @@ -0,0 +1,78 @@ +,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14 +11,United States of America,Federal state,".mw-parser-output .monospaced{font-family:monospace,monospace}USUSA840",US,00,,,U.S.,U.S.,U.S.A.,,,,, +12,Alabama,State,US-AL,AL,01,AL,AL,Ala.,Ala.,,,,,, +13,Alaska,State,US-AK,AK,02,AK,AK,Alaska,Alaska,Alas.,,,,, +14,Arizona,State,US-AZ,AZ,04,AZ,AZ,Ariz.,Ariz.,Az.,,,,, +15,Arkansas,State,US-AR,AR,05,AR,AR,Ark.,Ark.,,,,,, +16,California,State,US-CA,CA,06,CA,CF,Calif.,Calif.,"Ca., Cal.",,,,, +17,Colorado,State,US-CO,CO,08,CO,CL,Colo.,Colo.,Col.,,,,, +18,Connecticut,State,US-CT,CT,09,CT,CT,Conn.,Conn.,Ct.,,,,, +19,Delaware,State,US-DE,DE,10,DE,DL,Del.,Del.,De.,,,,, +20,District of Columbia,Federal district,US-DC,DC,11,DC,DC,D.C.,D.C.,Wash. D.C.,,,,, +21,Florida,State,US-FL,FL,12,FL,FL,Fla.,Fla.,"Fl., Flor.",,,,, +22,Georgia,State,US-GA,GA,13,GA,GA,Ga.,Ga.,Geo.,,,,, +23,Hawaii,State,US-HI,HI,15,HI,HA,Hawaii,Hawaii,H.I.,,,,, +24,Idaho,State,US-ID,ID,16,ID,ID,Idaho,Idaho,"Id., Ida.",,,,, +25,Illinois,State,US-IL,IL,17,IL,IL,Ill.,Ill.,"Il., Ills., Ill's",,,,, +26,Indiana,State,US-IN,IN,18,IN,IN,Ind.,Ind.,In.,,,,, +27,Iowa,State,US-IA,IA,19,IA,IA,Iowa,Iowa,"Ia., Ioa.[1]",,,,, +28,Kansas,State,US-KS,KS,20,KS,KA,Kans.,Kan.,"Ks., Ka.",,,,, +29,Kentucky,State (Commonwealth),US-KY,KY,21,KY,KY,Ky.,Ky.,"Ken., Kent.",,,,, +30,Louisiana,State,US-LA,LA,22,LA,LA,La.,La.,,,,,, +31,Maine,State,US-ME,ME,23,ME,ME,Maine,Maine,Me.,,,,, +32,Maryland,State,US-MD,MD,24,MD,MD,Md.,Md.,,,,,, +33,Massachusetts,State (Commonwealth),US-MA,MA,25,MA,MS,Mass.,Mass.,,,,,, +34,Michigan,State,US-MI,MI,26,MI,MC,Mich.,Mich.,,,,,, +35,Minnesota,State,US-MN,MN,27,MN,MN,Minn.,Minn.,Mn.,,,,, +36,Mississippi,State,US-MS,MS,28,MS,MI,Miss.,Miss.,,,,,, +37,Missouri,State,US-MO,MO,29,MO,MO,Mo.,Mo.,,,,,, +38,Montana,State,US-MT,MT,30,MT,MT,Mont.,Mont.,,,,,, +39,Nebraska,State,US-NE,NE,31,NE,NB,Nebr.,Neb.,,,,,, +40,Nevada,State,US-NV,NV,32,NV,NV,Nev.,Nev.,Nv.,,,,, +41,New Hampshire,State,US-NH,NH,33,NH,NH,N.H.,N.H.,,,,,, +42,New Jersey,State,US-NJ,NJ,34,NJ,NJ,N.J.,N.J.,N.Jersey,,,,, +43,New Mexico,State,US-NM,NM,35,NM,NM,N. Mex.,N.M.,New M.,,,,, +44,New York,State,US-NY,NY,36,NY,NY,N.Y.,N.Y.,N. York,,,,, +45,North Carolina,State,US-NC,NC,37,NC,NC,N.C.,N.C.,N. Car.,,,,, +46,North Dakota,State,US-ND,ND,38,ND,ND,N. Dak.,N.D.,NoDak,,,,, +47,Ohio,State,US-OH,OH,39,OH,OH,Ohio,Ohio,"O., Oh.",,,,, +48,Oklahoma,State,US-OK,OK,40,OK,OK,Okla.,Okla.,Ok.,,,,, +49,Oregon,State,US-OR,OR,41,OR,OR,Oreg.,Ore.,Or.,,,,, +50,Pennsylvania,State (Commonwealth),US-PA,PA,42,PA,PA,Pa.,Pa.,"Penn., Penna.",,,,, +51,Rhode Island,State,US-RI,RI,44,RI,RI,R.I.,R.I.,"R.I. & P.P., R. Isl.",,,,, +52,South Carolina,State,US-SC,SC,45,SC,SC,S.C.,S.C.,S. Car.,,,,, +53,South Dakota,State,US-SD,SD,46,SD,SD,S. Dak.,S.D.,SoDak,,,,, +54,Tennessee,State,US-TN,TN,47,TN,TN,Tenn.,Tenn.,,,,,, +55,Texas,State,US-TX,TX,48,TX,TX,Tex.,Texas,Tx.,,,,, +56,Utah,State,US-UT,UT,49,UT,UT,Utah,Utah,Ut.,,,,, +57,Vermont,State,US-VT,VT,50,VT,VT,Vt.,Vt.,,,,,, +58,Virginia,State (Commonwealth),US-VA,VA,51,VA,VA,Va.,Va.,Virg.,,,,, +59,Washington,State,US-WA,WA,53,WA,WN,Wash.,Wash.,"Wa., Wn.[2]",,,,, +60,West Virginia,State,US-WV,WV,54,WV,WV,W. Va.,W.Va.,"W.V., W. Virg.",,,,, +61,Wisconsin,State,US-WI,WI,55,WI,WS,Wis.,Wis.,"Wi., Wisc.",,,,, +62,Wyoming,State,US-WY,WY,56,WY,WY,Wyo.,Wyo.,Wy.,,,,, +63,American Samoa,Insular area (Territory),ASASM016US-AS,AS,60,AS,AS,A.S.,,,,,,, +64,Guam,Insular area (Territory),GUGUM316US-GU,GU,66,GU,GU,Guam,,,,,,, +65,Northern Mariana Islands,Insular area (Commonwealth),MPMNP580US-MP,MP,69,MP,CM,M.P.,,CNMI[3],,,,, +66,Puerto Rico,Insular area (Territory),PRPRI630US-PR,PR,72,PR,PR,P.R.,,,,,,, +67,U.S. Virgin Islands,Insular area (Territory),VIVIR850US-VI,VI,78,VI,VI,V.I.,,U.S.V.I.,,,,, +68,U.S. Minor Outlying Islands,Insular areas,UMUMI581US-UM,UM,74,,,,,,,,,, +69,Baker Island,island,UM-81,,81,,,,,XB[4],,,,, +70,Howland Island,island,UM-84,,84,,,,,XH[4],,,,, +71,Jarvis Island,island,UM-86,,86,,,,,XQ[4],,,,, +72,Johnston Atoll,atoll,UM-67,,67,,,,,XU[4],,,,, +73,Kingman Reef,atoll,UM-89,,89,,,,,XM[4],,,,, +74,Midway Islands,atoll,UM-71,,71,,,,,QM[4],,,,, +75,Navassa Island,island,UM-76,,76,,,,,XV[4],,,,, +76,Palmyra Atoll[5],atoll[5],UM-95,,95,,,,,XL[4],,,,, +77,Wake Island,atoll,UM-79,,79,,,,,QW[4],,,,, +78,Micronesia,Freely associated state,FMFSM583,FM,64,FM,,,,,,,,, +79,Marshall Islands,Freely associated state,MHMHL584,MH,68,MH,,,,,,,,, +80,Palau,Freely associated state,PWPLW585,PW,70,PW,,,,,,,,, +81,U.S. Armed Forces – Americas[6],US military mail code,,,,AA,,,,,,,,, +82,U.S. Armed Forces – Europe[7],US military mail code,,,,AE,,,,,,,,, +83,U.S. Armed Forces – Pacific[8],US military mail code,,,,AP,,,,,,,,, +84,Northern Mariana Islands,Obsolete postal code[9],,,,CM,,,,,,,,, +85,Panama Canal Zone,Obsolete postal code,PZPCZ594,,,CZ,,,,,,,,, +86,Nebraska,Obsolete postal code[10],,,,NB,,,,,,,,, +87,Philippine Islands,Obsolete postal code,PHPHL608[11],,,PI,,,,,,,,, diff --git a/q03_scrape_clean/__pycache__/__init__.cpython-36.pyc b/q03_scrape_clean/__pycache__/__init__.cpython-36.pyc index e99e1734469b0d74feccbb92229a5c70c95d8904..ea35d7cfb94a2b146e782597950d76d9492ba9f5 100644 GIT binary patch delta 55 zcmdnSxPpb^dl{qNC#D(S+A0lsvlG;Zsgt&P}x&f!YFOq@E zWx}(mkhv^`DmY87lzuQJ<1kl3u0HW$uRT2IrknqyJd>=5AZ=U)!ZqB$A)tnJ3w&I+ wLCFfijNSrkshJu}l+pfbkH%fM@^||mHQio#oGUTP1w)`?@c;k- literal 888 zcmZWn&2H2%5Vn(SHccto6KW-dB5svX1L}2Ef#AfUm#UY&EZ)qtn>2}C+W~g9J#FE} zgYXVKiLXdVeE=>!G0yT+l|=J-G9G{P%{YfUJL%}hx5-b=*mrj4iO7FRX5JD2175QU z@7G`w^lLZ?`!$+G7*vBQ#*lE>V?wyK=Kkdj0tm0!Bn5uL_M;o(W5)&6>z|NtK=zu< zd?v80;w!f1SKJ0wxZ+i`=D_#ZRj{Hep6e5t$FtyfH12o!zbHgsIOPuh&xLr8RYMp; za!oa=#FENY0P&a+M+)@C$s?WVa`%HSEoKYZ>CDKwv!!gaIcn5i`^`4N@jiFMg7%u$ z-1z8n_q3%$keygz(PZ*0d)1&W3-PyMpXQrBAu|sMR;;4&La_E_!{b|?Ip%pas#+9C zF8}zI=`BjVeV3ma)Fv0Rd1>Z&VY-3LTI z!k=({`TTHd3M~{)iyG3iEz{+a($=J2cj~@EolR6u2#o0;Y4@)P8QQ#n!s0BsLdoY(;}^Ae5>XE*8cv z6uMZ>d><~ha_U(_7k0Y#)JDnHApL`9FZ$VRASJy-n3tDp$?@Fii5%w2(fS$rxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@J^%uJ6Q2M8 delta 69 zcmZ3-xQCI$n3tF9*up(g6FJNcGxbA@Q;UlA6O%GBi!)NQi%XM=5_1#tG86OkT~dp) ZOY#f!^9xe*;tPuMvr>~wiYF%d003F18RY-~ diff --git a/q03_scrape_clean/tests/__pycache__/tests.cpython-36.pyc b/q03_scrape_clean/tests/__pycache__/tests.cpython-36.pyc index 8529c871c1d09e03d187c6dc0d0810c3df16d3e3..10be0b3ed8a09e1edf69d09021e6570ae816136b 100644 GIT binary patch delta 58 zcmeyu^^A+dn3tDp$?@FijT~PXl_T^s@^e%5lXEIlQgc)DQu6bX6ZOOMi?WLg5|e@A M`6;QJb(!3m0dLF{+W-In delta 72 zcmaFH^@WSWn3tC;bkUxujT~PX4b${Pi&Kk=^%IjaGK(`(vx`fUiV|}Z^D-0j^j%Vm cvrF;|^z#c+^WqDN^0QKtONuwkGr2PZ0LxJtu>b%7 From ff474b1407a740156fb4e9c82cc82222a3dbc9fa Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Mon, 20 Aug 2018 06:25:39 +0000 Subject: [PATCH 4/8] Done --- .../__pycache__/build.cpython-36.pyc | Bin 452 -> 452 bytes .../__pycache__/__init__.cpython-36.pyc | Bin 177 -> 163 bytes q04_mapping/__pycache__/build.cpython-36.pyc | Bin 877 -> 1005 bytes q04_mapping/build.py | 26 +++++++++++++++++- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 183 -> 169 bytes .../tests/__pycache__/test.cpython-36.pyc | Bin 1685 -> 1671 bytes 6 files changed, 25 insertions(+), 1 deletion(-) diff --git a/q01_load_data/__pycache__/build.cpython-36.pyc b/q01_load_data/__pycache__/build.cpython-36.pyc index 81e4cb5718f32251128ed40ee480dc147cd14b5b..c8988f682dedd27c8d286d99b88b51b4b2059649 100644 GIT binary patch delta 75 zcmX@Ye1w_Rn3tDp-9*+~jJGB}P-Ens%+6S<$IrmPpviKJtspTkC9$}O9mp->1`!~M NB3@L2Z}KWeDFDlg5GDWs delta 75 zcmX@Ye1w_Rn3tDp=|t9Bj8PLGs4?<6giJ%aRr|4bpJ3?v1Fx);#9DF`DifYOtYbw$0FT}i>%zUcrZ`Ze7SuS z+%WhcR+llc*AxT7>;GUMPHt*!YZu%Nw7v2zAUR?0;mdiVLe9Ej}~)xW1raSjViFH zA`@s2_W?N;K}&+=&Xr8G=q-ww?5QH1>7>Ye=R%6*&T$SA-WzGAh3XZjz1NwLNz5oY z9vM$rw{dcoU;A)KNu zOhl}Q)BR`BP1@mjmZW@8E==o|w*&drV-ScmvHiAi2$qk#xQ)7inq&*hhY;^~jK3)& zLx9Fn&;U{>>gBTxvXZ={&(EY-FkNJ6G9LVMM}xc1cu;Rj+IL8g{)c?`#oy5FpD4Rl n+_S>&wr<=l@c?`#e32D=mWr3Qp0b1x&KZ(6ZaXe^Nx1zN{FNBA literal 877 zcmZuv&2H2%5VoD)Zd+6#4n=^p*S%~?L5Rbu0>PQfs+VwxoY?IqP3+WmXj7%9?Ykfz z1Mv@+eep2#~E!~E?B1IRpHKeBLMh- z4*-1)!k_`I@hvg9A_E4?8$5=eqRKP=8dm`$%)5gK=UpI>{==TLou>*JEIA?8*;ndBqhN`1%`CuIS&NlT*!=PH4U= z^@?BUE?2anqNF1E$n}MhZ6cvxS*v8l3!{^k3PyEy-j$5A2X}IL^g3&xv!yss@~*7e zyzOngsA-ckdNOf*0O;n$R^WV5%YxSW1dL6bC8x{#5aO&)^IX|LyHaO+$~}}NEwi!W zlx2nfVneD;-*W3|1A%aL-P;|_O;!rVuWe*x#>&FjuoO_Cu|%}i6I56ac+LVFwA8F# zZq%`j*;#g03Rn3tDp$?@Fii5%w2Vfq>QxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@?g0Of6N>-< delta 69 zcmZ3~wiYF$y0{~*c8VCRY diff --git a/q04_mapping/tests/__pycache__/test.cpython-36.pyc b/q04_mapping/tests/__pycache__/test.cpython-36.pyc index 7f7c96e914a8d9dd0deb7c46cab1b7ff9ad3e05a..fee0aa5e748822c5d48e071679fd35c04d80e5ed 100644 GIT binary patch delta 58 zcmbQr+s?~j%*)HQQb`iV&ynZ+5Y*~O(vMTxnId6|iM`Yx%( b*(Lb}`uPQ^dGQ5B`B|ySCB>VCm`Ygyn3ftE From 28ec0af31c66652926c151baadd49dc267ebe353 Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Sun, 26 Aug 2018 05:17:37 +0000 Subject: [PATCH 5/8] Done --- q04_mapping/__pycache__/build.cpython-36.pyc | Bin 1005 -> 1000 bytes q04_mapping/build.py | 2 +- .../__pycache__/__init__.cpython-36.pyc | Bin 192 -> 178 bytes .../__pycache__/build.cpython-36.pyc | Bin 808 -> 1073 bytes q05_replace_missing_values/build.py | 39 +++++++++++++++--- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 198 -> 184 bytes .../tests/__pycache__/tests.cpython-36.pyc | Bin 1741 -> 1727 bytes 7 files changed, 35 insertions(+), 6 deletions(-) diff --git a/q04_mapping/__pycache__/build.cpython-36.pyc b/q04_mapping/__pycache__/build.cpython-36.pyc index de689455af29dfa27edf532c2abc7de24b53d75d..7d13394fa2fde30999c2df82ff0d0ff277541258 100644 GIT binary patch delta 286 zcmaFM{(@cEn3tDJ_ElAMGcyCjV+JI^1Y|n^ak0-tW$%d&v67)kbaFjYoxT7g7ZV?2 zkvLFHllK-|L1JD?VsQ~W$Qb70%Hms0`NdJJd8N4pl|_6&!O7apwa$V-Mv)MR0BI`{ nMJ2?5+*=$rx%nxjIjMFaj~0V;axe-oaxn2Q@-VY7vM>Pv@yI*b delta 291 zcmaFC{+3;^MH0%HCY5JgHo%+|5jk3={Jz8D~v= z;lXQB!<51-$&kh5!Vs%9*_KgBBZZ}zk&&S=Ae^CuA&awy9mK0)%Hm34O<@D_m_fW? z22J+Kos9NEx0v%1^Ioz6ZMemfn3Pnc$vychqvK?GCVyUbpkNUTkXXr3Br>_0sZNiN zk&B6su}BOkrpbGYtspTkC9$}O1EiU`xU%>bQ+{z2YhGz?LFFx`yn@LZ%(bopAVUN} t1V~qr2r3~8dx^(L;xi`+n9IDcC<&R*0?;jnd#Dp$zzt}B)`?FGmu0C=qQ<1DvvEg!s*F#oikHlgvNBFd%f#sL|?d8*^ny(fLis~pVwMWz&7-(Th#55`%}cB`pb zIo*5Q{~dc3!l^qT5Q(t;*Kr8Q#~XMRZGeo(I+nNL{O<(8;9pMAJs=v@2quWkVSb>8 znE74A+y({RWgo+RL*DkJb#1aW3au8ow)nnSM( literal 808 zcmZ`%y^_-~5SC;+PMix|#gMDgx;Xpbpko+jpyir78Z{op(k05-vQDy(BoiuVc?2GS z$KWZLQA?GMnu@h^KPf=#-Osz9N8j#_Pe-HZ+s_~LH$mtZ+B=Y=H{iAn9C2JAiaR9K z>(HluhXD-$Nzp4q8e+sf+UGtU@PPNeAR2Lej^c0&x1h5ayW#c8i>zc?OEp`MIjdPJ zmboa7^QzRxZJsO(yIdc3l+6v(f+xAX$=iuL3n=3L# z3tW?h$30-Yd&b{m0$}_NSzvIV_r_@B@sRhwdKleT2T=7NsxV8me)`eKT1-||VgyqO|iAQ_hz~mB)b#G^^*&cJLf_e3@NJ#R@utw+B5sg!E4CJ2H>p(m#vzgB8Z6 zY&w^AF0O1dHLPSxGL^m)_NuOQT4|v&ZK{RHYny7OIJ4QTkzDY*a(aF8GP~_>C#h!H z4J#U9(`h3Mp6Hc3`u|7mob~_$A`w0Udje(-A&-Zyx07^4a~i0o)GIRp#(8#S9jPom zof)xWbyXH}n*6iBWbfZfx`w))npV<`+R$osE7=Q=Tb2H+vf@o4USr5?yR<&;j2sXj G`}i-#^WbCv diff --git a/q05_replace_missing_values/build.py b/q05_replace_missing_values/build.py index 97d9755..410963e 100644 --- a/q05_replace_missing_values/build.py +++ b/q05_replace_missing_values/build.py @@ -1,13 +1,42 @@ +# %load q05_replace_missing_values/build.py import pandas as pd import numpy as np import sys import os -#sys.path.append(os.path.join(os.path.dirname(os.curdir))) -from greyatomlib.pandas_guided_project.q04_mapping.build import q04_mapping +# sys.path.append(os.path.join(os.path.dirname(os.curdir))) +# from greyatomlib.pandas_guided_project.q04_mapping.build import q04_mapping + +path1 = '/home/notebooks/data/excel-comp-data.xlsx' +path2 = '/home/notebooks/data/scraped.csv' + +def q04_mapping(path1,path2): + 'write your solution here' + df = pd.read_csv(path2) + namesList = df['United States of America'].values + abbrList = df['US'].values + zippedList = list(zip(namesList, abbrList)) + mapping = dict(zippedList) + + df = pd.read_excel(path1) + abbr = list() + for state in df['state'].values: + if state in mapping.keys() : abbr.append(mapping[state]) + else : abbr.append(np.nan) + pd.Series(abbr) + + df.insert(6, 'abbr', abbr) + return df -path1 = 'data/excel-comp-data.xlsx' -path2 = 'data/scraped.csv' def q05_replace_missing_values(path1,path2): + df = q04_mapping(path1, path2) + df.at[6, 'abbr'] = 'MS' + df.at[10, 'abbr'] = 'TN' + return df + + + + + + -#print(q05_replace_missing_values(path1,path2).shape) \ No newline at end of file diff --git a/q05_replace_missing_values/tests/__pycache__/__init__.cpython-36.pyc b/q05_replace_missing_values/tests/__pycache__/__init__.cpython-36.pyc index 03391a7d73977c58beb60b2c9e2dcb47994c3aa6..8a103268938fe43d2e4a69eadcb5c469ee08cc67 100644 GIT binary patch delta 55 zcmX@cxPy_yn3tDp$?@Fii5%w2srniDxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@VE_m_6UP7m delta 69 zcmdnNc#M(5n3tC;e(#>Bi5%vJ#rmPesYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@dl08d#N!T&06J9^3IG5A delta 72 zcmdnbdzP2On3tDp?!G-y8#&mR3=8x_i&Kk=^%IjaGK(`(vx`fUiV|}Z^D-0j^j%Vm cvrF;|^z#c+^WqDN^0QKtONuueGWD?l0G Date: Sun, 26 Aug 2018 05:35:27 +0000 Subject: [PATCH 6/8] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 179 -> 165 bytes .../__pycache__/build.cpython-36.pyc | Bin 740 -> 1414 bytes q06_sub_total/build.py | 35 ++++++++++++++++-- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 185 -> 171 bytes .../tests/__pycache__/test.cpython-36.pyc | Bin 1424 -> 1410 bytes 5 files changed, 31 insertions(+), 4 deletions(-) diff --git a/q06_sub_total/__pycache__/__init__.cpython-36.pyc b/q06_sub_total/__pycache__/__init__.cpython-36.pyc index f70134c54a61d45f8edae7081c146a4bc62b5538..a445d7ccd6916344a911c19c6d69b0f8b269ce2f 100644 GIT binary patch delta 55 zcmdnYxRjB@n3tDp$?@Fii5%w2LHZf_xvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@&H(*G6MFyv delta 69 zcmZ3=xS5f|n3tC;X4amli5%vJ3HqVMsYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@d90XU5rPyhe` diff --git a/q06_sub_total/__pycache__/build.cpython-36.pyc b/q06_sub_total/__pycache__/build.cpython-36.pyc index adaf0ce0d3ca686ab384f6f40e1d0fd216b66a0b..8aa8ed1f8b6305386c983afb6f8c7f02b308a25f 100644 GIT binary patch literal 1414 zcmah}Nsrq$6ecN&k~Ow7Nzr7c=whTN1BE?Z55*uz7xYjh(*kY~KtUkTBIA)p+mKWm z59CXxKcm+k`j>d^Y5qb_eWcPXKo<#o8<+PUzfbyfGKsGpKY#R_kI*0JwFi837lx7` zIO4cO33i$!9%xefRgeUDn4<}Gb72w+T13T2gdk%l_dt#>v3=cYubfoVWD2&=gI`c` zjZ+?ip7Mx~K<{(BLi6|v@}iSDHv3w#yiT=HI#q3%Ylyvbe)M@NMO(5=q*bm|UT@N; ztn7r!h}{U!2!`$A8yMP@hbnfYCmbK5g6ur7h_ig{X}|Y+|B}FpKnHyQn!+C1 zBfCd?muMG0`x16|cE`8q@khI;k9t~!m*|Yjwuhd3+DC`59;5Rgt*=K#Ja`Xn{=Gi5 zUQdd#?H)YOdeASuIQUuSTFkahCugcDJDoT6>{Li`aqysq89rNS2DdP4p3J_ggv>LR zkOwOhC>y?_(4q0!dM)P@Lt36hQZSxo>Zzf_%^1JTl{Vf*-Ws3hnNDK2L_EtxY5X&> zRfe**6*V`cZjD#7I-x7bBw!-1m5_QqGC|Aq>Bocm#1Q@@8P%*3>K+`PM798D#gL{I z+}b9r;8=i2+9IU|<##0C2KDC;%hRS3%dFgTQ9PEA2x$g3kFWRlyJ3sm?eUWYtGN^Y!AQEHyPH_Yl#rt@S z_CdyEisdbse@Pk-oR_4z4UR@V0@9EjPzGSboE`&lofRGr&_yQ+xxbPDtac41?*(Anq=qm(_vCdOzG1~%R@iG9#7%42g5HCnA`r-R5n~s9qh_1j5q$y1 ztD0S%cmt#_2+-FOALwhTxA701|KHRb`UzQmO3j1ll7tkZj`AK zC9nZL6=}bFC;>=J8fARTQaQ0Pzi9H>gglp)r-o*o1Uvb9BgK~KrYiIG;vYG-`1ile s!V%8(@33@bzlNPd(E@0qV<@yM#T{FpvN%UL!ebZ_ejks$=te~U0&kpPfdBvi delta 481 zcmYjMyJ{Oj6rI;ftH%bnf{?;4i~`oi4j4m>2_$hLoXWTvFk*J^=;eKkXLf@mWKt-k zH|o-+N|{f{R~V*^|H0tOvvT7L=iGbd-Z^vUXY1bEc^?GLhr54#LJ<0oUWC)=qk}oS z-3hk=0Zsh0!5bI><4y2*3u;jRfp{D6IqLeizmD=n2Sg!4Ig4eo7w4(kt8{OcnAu`$ z(=xFZN!?6Ww8SfNLzV=EGF6kPx zH{UrEQKT*Hi_Fqf8Cm*OXzLYuA(AfD)cM)^Nav-B=9Zc=?K0~rQH=MW(*gHkI2cYc zk?@+UOd0(_y6vt#UWOM&Y7>fRJTYT=jT|2t4U_aki&Kk=^%IjaGK(`(vx`fUiV|}Z^D-0j^j%Vm cvrF;|^z#c+^WqDN^0QKtONuwkFr_gA0J1k4e*gdg From 40e754119e1a3a83c1806043cc7e37475652f190 Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Sun, 26 Aug 2018 06:13:26 +0000 Subject: [PATCH 7/8] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 177 -> 163 bytes q07_symbols/__pycache__/build.cpython-36.pyc | Bin 866 -> 1772 bytes q07_symbols/build.py | 43 ++++++++++++++++-- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 183 -> 169 bytes .../tests/__pycache__/test.cpython-36.pyc | Bin 1411 -> 1397 bytes 5 files changed, 40 insertions(+), 3 deletions(-) diff --git a/q07_symbols/__pycache__/__init__.cpython-36.pyc b/q07_symbols/__pycache__/__init__.cpython-36.pyc index 60b0cca0e5314ee04b43a312e722ec776bd47aea..18fae2530725c3296d8855637bbb63a853ac8309 100644 GIT binary patch delta 55 zcmdnUxR{Z{n3tDp$?@Fii5%w20s0yFxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@jsW}}6LSCn delta 69 zcmZ3?xRH^=n3tC;b=ID!i5%vJar&XfsYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@bp0XZ)jQ2+n{ diff --git a/q07_symbols/__pycache__/build.cpython-36.pyc b/q07_symbols/__pycache__/build.cpython-36.pyc index d28eaa97376de522868951cb3b126c6c53715554..2d0fa3d079c90080e53b160dcf1410cd68792246 100644 GIT binary patch literal 1772 zcmah}+in|07~a`)96Pw7kfao_5FlA&v&=15c>ykZ#W!O}QzYoF=0D8wKYaiHVXxQu^Wo3m{q9-TAJ&b}h5R{& z{0W3vjAT|s47Vc(+|JzGi#)Pg^CRD^1yNvl7=_%Qt<5?-09`k<3);IR`o}3J+F)+< z3iFu%ixu@*z(Vj_Y>jomH`zMtg1^eh#2WUlV1souB&uHvnig@*WgW{ZOY6lBqct7# zi-c$QlQOUFYkhQ)$%{qbEXhRBinCE7pC-1x2j3cocJNCK`720m%}5KwmUe41vSZEc zr31+}l3P2q+d8d#X=8_1d#wlV0`b_OyTFc<#0Zusj#6#=*d&{s5TYnZ@T4%nf z+F%B)4R^4gSm%$lUL!m!?TLPWy$!V1+OsZmnFr0$8r=66+dqi3=7V|Jh=DA#rcTRZ zaLNT=Y(Flr!UmI?A}E9Mc<@EeMVipaemqg0)YDf!JX9{7PQ|dN?21L9;FQIPi1MG( ztl?6*St@JgEYeE3EKTaDW44&MD))@frSfT2@q#J4sFYLCBJwAA31|JZkX+QmHRV;b zKK)?D_LR+zqqTzOTz-Sgqfi@Qqz;}zO0=wk9M`7Bi2wjC;eh;RiQ8b$4#%fu&c{hM zXFSKlWs%VFlTw_?iYAyZ86Q`)U{uB@P0BcnD^bpPQjgDfKaJ%)pO%>%Pn$GjqiU|! z&v!qH|9)%(_shE=mfa!x-yk6*pY%!B>VtOd4I*C0`ZZ*<$UdA1eayHQ+20;rb)XIH=aZ1P{@DOoKdNk64;|6h)3-F))I` z-A`iKOyjz&Y4$!YSh;$J6A8zdwl>0;>rEypFU9d3qx82$x5Z>3TI literal 866 zcmZuvL2uJA6t`YvPKEoW2UuS zR7{VR$&aMe?P2Xwg6;(!95c2YLbhvn_=)*(YkST7Zk0p7!A7ozcD8*OB? zM047!n+n*HTGRXXS_)?Bq*7eS%nAvbq36c8xDD*WwnW)B^qkrVSc;mrVX2C`?eoIa ztP*XMHwI$*>dJ@(bE=ZXB>8XGl7C)Q()F!tfZ2iLjK9r}@0LEV#B?I#GvL@raqeG$ TJp_nxjE7(`evF4C#3A_uG&k$t diff --git a/q07_symbols/build.py b/q07_symbols/build.py index b8cbb92..11bef5f 100644 --- a/q07_symbols/build.py +++ b/q07_symbols/build.py @@ -1,18 +1,55 @@ +# %load q07_symbols/build.py import pandas as pd import numpy as np from sklearn.model_selection import train_test_split import sys import os +import locale sys.path.append(os.path.join(os.path.dirname(os.curdir))) -from greyatomlib.pandas_guided_project.q06_sub_total.build import q06_sub_total +# from greyatomlib.pandas_guided_project.q06_sub_total.build import q06_sub_total path1 = 'data/excel-comp-data.xlsx' path2 = 'data/scraped.csv' +def q04_mapping(path1,path2): + 'write your solution here' + df = pd.read_csv(path2) + namesList = df['United States of America'].values + abbrList = df['US'].values + zippedList = list(zip(namesList, abbrList)) + mapping = dict(zippedList) + + df = pd.read_excel(path1) + abbr = list() + for state in df['state'].values: + if state in mapping.keys() : abbr.append(mapping[state]) + else : abbr.append(np.nan) + pd.Series(abbr) + + df.insert(6, 'abbr', abbr) + return df + +def q05_replace_missing_values(path1,path2): + df = q04_mapping(path1, path2) + df.at[6, 'abbr'] = 'MS' + df.at[10, 'abbr'] = 'TN' + return df + +def q06_sub_total(path1,path2): + 'write your solution here' + df = q05_replace_missing_values(path1, path2) + df = df.groupby(['abbr']).sum() + df = df[['account', 'Jan', 'Feb', 'Mar']] + return df + + def q07_symbols(path1,path2): - "write your solution here" + 'write your solution here' + df = q06_sub_total(path1, path2) + df['total'] = df['Jan'] + df['Feb'] + df['Mar'] + df = df.applymap(lambda x : '$' + '{:2,}'.format(x)) + return df -#print(q07_symbols(path1,path2)) diff --git a/q07_symbols/tests/__pycache__/__init__.cpython-36.pyc b/q07_symbols/tests/__pycache__/__init__.cpython-36.pyc index f854b4a6bde19801b4c6c3a23a6caed8dcc7fd6e..f982c8d5eac433edee5076d47dfe0931a909144b 100644 GIT binary patch delta 55 zcmdnaxRQ~>n3tDp$?@Fii5%w2Vfq>QxvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@?g0Of6N>-< delta 69 zcmZ3~wiYF$y0{~hi8RP%} diff --git a/q07_symbols/tests/__pycache__/test.cpython-36.pyc b/q07_symbols/tests/__pycache__/test.cpython-36.pyc index 1a8a9c3d7050cc5a1b640e55a727c322ab8a9092..3990ed5527c0774a5348f8ab11351fa682d313c9 100644 GIT binary patch delta 88 zcmZqX{>sH+%*)HQphSePaChHsz delta 102 zcmey$)y&Od%*)GFcl=<~MvnK4h6(zi#i>Qb`iV&ynZ+5Y*~O(vMTxnId6|iM`Yx%( z*(Lb}`uPQ^dGQ5B`B|ySCB=)Sm>3yvZI))9!^kGWz`#%>F?labCdVz-g2a*x!&{T} GSlt0%xFe7N From da2ad3f27cd0e128cd353014fd4db98b6d61b551 Mon Sep 17 00:00:00 2001 From: clydemendonca Date: Sun, 26 Aug 2018 06:40:41 +0000 Subject: [PATCH 8/8] Done --- .../__pycache__/__init__.cpython-36.pyc | Bin 186 -> 172 bytes .../__pycache__/build.cpython-36.pyc | Bin 1055 -> 1776 bytes q08_append_subtotals/build.py | 50 ++++++++++++++++-- .../tests/__pycache__/__init__.cpython-36.pyc | Bin 192 -> 178 bytes .../tests/__pycache__/tests.cpython-36.pyc | Bin 2221 -> 2207 bytes 5 files changed, 47 insertions(+), 3 deletions(-) diff --git a/q08_append_subtotals/__pycache__/__init__.cpython-36.pyc b/q08_append_subtotals/__pycache__/__init__.cpython-36.pyc index df1c3a25dc9d1d7d1993fbeeddeb2d69af4df5ca..1c08fab62897c1f381215d5a02ea305366a7623b 100644 GIT binary patch delta 55 zcmdnRxQ3C#n3tDp$?@Fii5%w2k@^|=xvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@UH}1C6PEx0 delta 69 zcmZ3(xQmg)n3tC;XV#vmi5%vJ>H49?sYS*5iAfom#TlvD#idC_iMfe+nTdJ&E~&-Y YCHV#V`30$Y@dZWsS*gh-#S@df06};ed;kCd diff --git a/q08_append_subtotals/__pycache__/build.cpython-36.pyc b/q08_append_subtotals/__pycache__/build.cpython-36.pyc index d03d4af14ac147d09523754dc73016ed3fde84ea..bb824b9be6c75e5572a235daeb22281fa16715ee 100644 GIT binary patch literal 1776 zcmah}+in|07@nCu+Hp#N0!cw&Ar7*X#vwq3swe_c^#a-m$&`vk$Xf4goZajxGwTwY z^$p>cH|PuSN^{FqUZGcfGus?m1-h&G4|Dwg`M+;IUtR6~{QV!l2$zt5$d!-5{u)g_ zfZ&AFj0DtZ7Fb5xfo-%CIGhD8w*rsb-1(CPK6kkX-Qhm(KzDhUuRyPGIwFJK8FnQ5 ziwz#u;V?dl;_P-*=GATOZ=GcFWU*$3WF*2W=39|`66tXC*Fm$OIdfp)RRZHQh|Tc>2{o!rF=ORu;`e%)O9jo-Mb zcS??2Q8iu)ukkl9pOWJrv|o49ZtFeP=dU!L_8OM<^aa4Pw1-sP#rkg|spI~B5P$Wl1kY;iRz$hrkHzG_E9{S$_=Y3F1TVvrK}<>0(XRyu+~iq z8H;+*QBD=sho7}-M=^d7bc!&KPc7Ew5ST#6%Eg%SEo9uKRq;GrB(X9V{`>Syq>{!kw zbyLN7IW2JFZEvo5>=yX=Jh_W1i zp}`i6%T!GGbP7tO4B*zZ0Jt?Ur}l>N{~wqpP347ARL%+j>$|W}*8O;*tcRgMN;(eZ zO+`7YCUa%US^mmASC6;v=z5M#K|jU@ZEC2Ou9VQpUZkcgq+xGTJA`qWT8)&RvmCsg zqGpEY=eB0>xs6m?n>$Z!?oKK9{xUB^iua&>EmEg_o>~u=(*19?iVXxJZfWtZ78-a1 z`?_A`m?Q^OIZ466LW-&S(^|u5geGr5aLQQ<1fJ4&&^fU7pV5yN&hK}3HkVlK9+V;n zhNz+^FXP7F&BA=b!@WCtFEq0F@jiU9 z0s*d9RW=97klu^v#j}5~^KvLRuRC`W8%d3D%}ty3%nwEymWof&Kj>sa3v7KDnlrLH!t}ti}&eDsXrZ)56@Lk{g E7k>1dYybcN literal 1055 zcma)5%Wl*#6t(l3%&Quq^60J$gftROrc^wHstSp!5(v6!*?1Ew5ah+*Vk-EUqec1OpI_KEl>-RhFetaieCPF{atzkg^226bb#}LB; z5!^(Bm`${Z)kK@v5Dnp^Ez-ie*A#BrCT++q(qT5~GKaOkBGO~{1P$F^@JDn!#C88- z^deAI7?gQQ1uS$gMlS<3OT%2K`4*!k_4zd7VkgSeVn@%tsZi7Tped&)6hiLpXUt27g9VKMs(C-%}_*om_S zy}~dvlh(q9%vm^z%UsruG3#74b0E~6Kf080$+u^DCAU>Bsxr>A?FpB>Hs8~%Hjj8% zn;)sH?Hi_+W)NWjsE3Z4!3mh^fMYlT+$$}YaXfb)e|i1X8;zGBku%O^N=wM_^c#|0 zX#UOoPl`+B({K{22|ou(B~57-)675Q>b%SgKQDL|6f#eER4Tuq8KWvVt7694&9Z+n zdKJ(D8ks(o2CDMIDi+KuX0^L7Xc{tla8IKIL-Qwh?eO+R9#NqVAX#sanjf)GuTR;I zGsdUGw$zj*Ts%~ps!D64V0HTtbU6a_yvC=*1vFxo(xP_OxN1l842r{6Z5Onh?5@Kz z;;^yCOnPg1N?^stqy@hXWPS;^uqi`JO1k4XqarA2D0rja+VwP!&ASNciW-1JMhAEB zCf0Ow*C4~!n}nHIK;KfCNF A-T(jq diff --git a/q08_append_subtotals/build.py b/q08_append_subtotals/build.py index 96e2f9e..595fda8 100644 --- a/q08_append_subtotals/build.py +++ b/q08_append_subtotals/build.py @@ -1,15 +1,59 @@ +# %load q08_append_subtotals/build.py import pandas as pd import numpy as np import sys,os #sys.path.append(os.path.join(os.path.dirname(os.curdir))) -from greyatomlib.pandas_guided_project.q06_sub_total.build import q06_sub_total -from greyatomlib.pandas_guided_project.q07_symbols.build import q07_symbols +# from greyatomlib.pandas_guided_project.q06_sub_total.build import q06_sub_total +# from greyatomlib.pandas_guided_project.q07_symbols.build import q07_symbols path1 = 'data/excel-comp-data.xlsx' path2 = 'data/scraped.csv' +def q04_mapping(path1,path2): + 'write your solution here' + df = pd.read_csv(path2) + namesList = df['United States of America'].values + abbrList = df['US'].values + zippedList = list(zip(namesList, abbrList)) + mapping = dict(zippedList) + + df = pd.read_excel(path1) + abbr = list() + for state in df['state'].values: + if state in mapping.keys() : abbr.append(mapping[state]) + else : abbr.append(np.nan) + pd.Series(abbr) + + df.insert(6, 'abbr', abbr) + return df + +def q05_replace_missing_values(path1,path2): + df = q04_mapping(path1, path2) + df.at[6, 'abbr'] = 'MS' + df.at[10, 'abbr'] = 'TN' + return df + +def q06_sub_total(path1,path2): + 'write your solution here' + df = q05_replace_missing_values(path1, path2) + df = df.groupby(['abbr']).sum() + df = df[['account', 'Jan', 'Feb', 'Mar']] + return df + def q08_append_subtotals(path1,path2): - "write your solution here" + 'write your solution here' + df = q06_sub_total(path1,path2) + df2 = pd.DataFrame({ + 'account': [df['account'].sum()], + 'Jan': [df['Jan'].sum()], + 'Feb': [df['Feb'].sum()], + 'Mar': [df['Mar'].sum()] + }, index=['total']) + df = df.append(df2) + df = df.applymap(lambda x : '$' + '{:2,}'.format(x)) + return df + + diff --git a/q08_append_subtotals/tests/__pycache__/__init__.cpython-36.pyc b/q08_append_subtotals/tests/__pycache__/__init__.cpython-36.pyc index 21f4cd0cdb2d982e41dd3fb8f998360de650cdd0..34cd2d61a8e15647ef85df127f39a79621261a3b 100644 GIT binary patch delta 55 zcmX@WxQUU&n3tDp$?@Fii5%w2@%kD0xvBceIh84?xv6<6`FY8S`r-LS*~JBk$w2Y^ Jl+=j@0RRNa6R!XO delta 69 zcmdnQcz}_^n3tF9__2dg6FJNcbM-@uQ;UlA6O%GBi!)NQi%XM=5_1#tG86OkT~dp) ZOY#f!^9xe*;tPuMvr>~wiYF!o003ry8Xy1w diff --git a/q08_append_subtotals/tests/__pycache__/tests.cpython-36.pyc b/q08_append_subtotals/tests/__pycache__/tests.cpython-36.pyc index da1ab93cde97498d1677c07a0db5dd9f0d819fda..515ab4e71de87cea3cad56517e12ecd51117c0fd 100644 GIT binary patch delta 58 zcmZ20IA4&%n3tDp$?@FijT{0@$}##G`MIh3$vKrNsky0nDfxNHiTdIBMcKs#iOE3m M{FKzqo=hoh04`}0xBvhE delta 72 zcmbO)xK@zEn3tD}@#Mj%jT{0@hFSWd#i>Qb`iV&ynZ+5Y*~O(vMTxnId6|iM`Yx%( b*(Lb}`uPQ^dGQ5B`B|ySCB>VqnNrvQY_l0=