0% found this document useful (0 votes)
35 views

Python 数据可视化编程实战

Uploaded by

touchit2033
Copyright
© © All Rights Reserved
Available Formats
Download as PDF or read online on Scribd
0% found this document useful (0 votes)
35 views

Python 数据可视化编程实战

Uploaded by

touchit2033
Copyright
© © All Rights Reserved
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 257
teaes't Ik tt 4 Python Data Visualization Cookbook EZ M NEU =o Cit ie g A, Bein Fi HWE POSTS & TELECOM PRESS Dict s ee Cs Lt ee aot Ld Cee Et ale eet Ld Comm ae De SSL st tae ee Ee Sica ek eee SE Ee Set | NIMC USS Sie SEMAN eet Ua am bce eed BO ASL att Pee ahs ene ed se ies sas id ees es tLe) PR bid Pe ek ee ee Desa Abt A Ek D Ed EM sea e eT es UCL esta ei oF ee SLL eS a DRE aE Uk ee bet Boss k SOG AS ca ts cae Peers mi 415. 49.00 3 Python STE OD 0 (6 a Fz Se AK [B¢*R=] Igor Milovanovieé & mi iz AR BB AR Hy he # dk SERRE (CIP) ME Python Sede PT UL 4a PEER / (SEAR) RY TT Hae #% Milovanovic, I.) % ; Mii. —- diate > AR WBE LHRRAL, 2015. 5 ISBN 978-7-115-38439-3 I. OP 1. OR Oidi I. OR LA AF wit IV. OTPS11. 56 FRU AS FS 3 PHC TP BEC HEF (2015) 98057566 5 REALS AA Copyright ©2013 Packt Publishing. First published in the English language under the title Python Data Visualization Cookbook. All rights reserved. ABH Packt Publishing AANA RMB UAL LM. RAMSEY, ABABA TA UAE Pa RM EAT BS ANH KARA, PULL. °F (2 it sat eEemaR | PRE SERENA aRAEAE oO ARMOR REINER aac ema I (HR 100164 HL-FALYY [email protected] Vi gp/ww-pepress. com.cn =e BLED 5 FH RL © FA; soo«1000 1/16 “] Igor Milovanovié Q aa Bike 16.95 FR: UTE 2015 #F 5 FAB A FURL 13.00 2015 $F$ FARIEA 1 AEL SAGs 01-2013-9037 5 Se ft: 49.00 76 RAR PALE: (010) 81055410 EDM ARAL: (010) 81055316 BRMAAALE: (010) 81055315 Azz ATE AH Python Sc SURE PT OL CaP SCART, She MUAMEH Python Jee WATE, Liat 60 AeA AT TE: EE SONI BE AT PL AR AETIE 8 HE, PMSA TE ERS, TPB REA. SRS PCAN GE HI. YE 3D FLPMA Peek. FA PEAS ATS Pal So P22 8 TE Pe i RES it} matplotlib MR. ASI ALLER Python Si AEA — HE AERA TE ALA BL BOISE, AT AB BER MA SLIP es TE BOR. AGS. BOAT PM, JES Python BY LEH Sil He LMR... 1.2 48 matplotlib, Numpy il Scipy / 1.2.1 HER TAE..... 1.2.2 PefEsb oR 1.2.3 CE RHE 1.2.4 4h ERE . 1.3% virtualeny #il virtualenvwrapper.... 13.1 Ee TA... 13.2 PRIA RR. 1.4 7 Mac OS X 1.5 {& Windows [£48 matplotlib.. 15.1 HE He. 15.2 Befese OR. 1.5.3 AbFEENI... 1.6 SRR ATL: Python BRIE (PIL) ... 1.6.1 Berea wR 1.6.2 EE 1.6.3 PICEA... 1.7 2248 requests HEE 1.7.1 PRAM... WW Pythom #48 =) #0 {t. ff ak 1.7.2. requests (1/8 #28 ..... . 1.8 e{USP ACH matplotlib FH... 1.8.1 Hee TAF, 1.8.2 Pee SR 1.8.3 FURST. 1.9 4SiLA BH matplotlib BH 1.9.1 HE CHE 1.9.2 RUA 1.9.3 ROMER RE BEN.. 1.9.4 #96 iH. LR TAME 21 fd... 2.2 IACSV SCHEER 2.2.1 i Off... 2.2.2 PEER, 2.2.3 fF. 2.2.4 APFEBLOH q 7 2.3. MA Microsoft Excel 3444" 5 A 24K. 23.1 Wee Tf... 2.3.2 Befesb oR 23.3 7 /P IR 23.4 thei. 2.4 SRE RBG CEES ABE 2.4.1 HE HE 2.4.2 BRIER. 24.3 fe BUH. 2.5 AAI ZEEE AICTE BELA. 25.1 HE AE.. 2.5.2 Petes 25.3 CHE 25.4 breil. 2.6 MA ISON BGRURE ABE. 2.6.1 HEA CHE. 2.6.2 Pete R.. 2.6.3 HERB 2.64 AFUE, 2.7 Sih Adis) ISON, CSV All Excel... 271 2.7.2 PER 2.7.3 TAPS 2.7.4 AbFEHM...... 2.8 NRCS ABR 2.8.1 AE LF... 28.2 Perea. 2.83 PGE... 2.8.4 FFT... 2.9 HSER NAL 2.9.1 HEA THE 2.9.2 PRE aR. 2.9.3 #dFEULH..... 2.10 BERARDI. 2.10.1 PEAR... 2.10.2 CPE REE, 2.10.3 Ah Ei 211 DENRA QL HRA. 2112 AF RREL...... 2113 ARFEBEM... 212 SPARMSBGEH) NumPy #41... 2.121 HER THE 2.12.2 PRAEAESR.. 2.12.3 Af UE. 2.12.4 FhFC BM... se 2.13 AERCATEIBE PLEA ARE... 2.14.1 HEAT, 2.14.2 Pete, 2.14.3 IV_ Python #48 5] #1 a8 9 8 2.14.4 FhFELH, BIG HAH EMER BD ASP a 65 3.2 9 CHAAR $F. SOB AEB ER 3.2.1 HEA TE 3.3.1 HER HE. 3.3.2 BREA, 3.4 BURA EAGER. 3.4.1 HEA TH 34.2 def 3.44 PhCH 3.5 WPAN, EAE 3.5.1 HEATH 3.5.2 PREAR. 3.5.3 AEB 3.6 WANE. AUER A 3.8.1 3.8.2 3.8.3 AFA 3.9 Se 3.9.1 HE Ltt 3.9.2 BRIE AIR. 3.9.3 Cf 3.10 Sete RTE BALL HEAT 3.112 SRPEAM.. 3.12 Sei TE Bx RI PRE .. 3.12.1 MEA OYE 3.12.2 BREA. 3.12.3 THEE. 3.12.4 #h 90H 3.13 TARR CE ic A Cs FAL 3.13.3 CARRE... BAR FIBSHRMEM.. 4.1 fit... 4.2 BORA bil RE EEK 4.2.1 Met CHE 4.2.2 PRE R. 423 tes. 4.2.4 APFEHE. 4.3 yd ARs 43.1 Mee LfE.. 43.2 BER. 43.3 fF GUE. 43.4 FbCiA. 4.4 tel Pal decison Bice 2e 44.1 HRT 44.2 PEM. 443 EGE. 444 FSBO vl Python $448 7 #8. 464 % aR 4.5 {£1 subplots( 7 HEM LH. 4.6 et 4.6.1 Het CHE, 4.6.2 RETR. 4.6.3 THER 4.7 GREP ACES 4.7.1 Hb HE 4.7.2 PREM... 47.3 Cte 48 HOARE 4.8.1 Het CHE. 48.2 BRIER, 48.3 TPE. 4.9 Sih FE X ak. 4.10 Sa RITE BEM . 4.10.1 HEE. 4.10.2 PEER. 4.10.3 THE BEE. SSH He 3D TAKA 5.1 fiir... 52 lt 30 HARA 5.2.1 HE THF 5.2.2 SeteAe a, 5.2.3 CARRE 5.2.4 FFM... 5.3 GN 3D FA 5.3.1 HE THF. 5.3.2 PER. 5.3.3 Te BUH... 5.4 ¢£ matplotlib 142 i SAL HEA TB csceeneeencees 5.4.2 PAE. 5.4.3 Cf BE... 5.4.4 FERN... 5.5 Hi] OpenGL sl fait . 5.5.1 HER TE 5.5.2 BEARER 5.5.3 Lf Bt 5.5.4 #hEuH. HOR AARNE SHAR.. 6.1 fiiSP... 6.2 HH PIL tic Pel (@ bse. 6.2.1 HE THe. 6.2.2 DRIED. 62.3 CFR 6.2.4 FFE 6.3 Seti tT FARA Ae 63.1 HER THE. 6.3.2 PED R.. 63.3 THE 6.4 CEH AAPA TEI deb AB A PR 64.1 HE LAF.. 64.2 PME 64.3 THEE. 644 FFM! 6.5 fF] Basemap 7E Sth F122: il Bah 6.5.1 Mb LAF. 65.2 PEAR... 65.3 AEG 65.4 AFL... : —— 6.6 HF] Google Map API (£34 28 4) SAE 6.6.1 Hee TE... VIIL Python $48 FT #8 tt A #8 3: aR 6.6.2 PetPAE IR 6.6.3 LAF BL, 6.6.4 FEA 6.7 “:s& CAPTCHA Ff .... 6.7.1 Mee THE 6.7.2 PRIA... 673 TAGS. 6.7.4 AFR B17 AER RRA .. TA fir... 7.2 SIRES HCP 7.2.1 Hee CHE 7.2.2 PREM. 72.3 CAPD 7.3 SEARS A 73.1 He IE. 73.2 Pete. 73.3 THESE. 734 FFE. 7A fle 74.1 HER THE. 7A2 PRAELERR.. 143 CAPE. 7S Hetil RTE AA 7.5.1 HELP. 75.2 Pte. 753 THe RH 754 FFE. 7.6 EPR RE 7.6.1 HE Tt. 7.6.2 PER. 7.6.3 ERE. 7.6.4 FFB. 7.7 EFA KOS AED Bg . TTA HER TAP ose rose 169 169 181 185 186 192 7.7.2 PeAEAE RR. 173 TANASE. 7.74 FFB. 7.8 Still PATE 7.8.1 HE LAE. 78.2 PALER. 78.3 CEG 7.9 AAS AYES HE 79.1 HE THE. 7.9.2 APH. 7.9.3 TAPER 7.9.4 FhFEDL B8 BSH matplotlib Mi... 8.1 TAP... 8.2 4rfill UAE Cbarbs) 8.2.1 HEAT, 8.2.2 BefeAbRE.. 8.23 CRE. 8.2.4 Fh FEO. 8.3 Settle 83.1 HEA THE 8.3.2 Bee 8.3.3 01 GUE. 84 HE 8.4.1 HE TLE 8.4.2 PIPER. 8.4.3 EEE... 85 HeHRIEK 85.1 HELA... 8.5.2 EAR. 8.5.3 CPF 8.5.4 Fh FEiLH 8.6 SCANS ea 8.6.1 HES HE, 8.6.2 Pee! woe 2 X_Python $48 7 4b Sa FE KAR 8.6.3 CAP RE..... . 8.7 Hi] LaTeX jH#e CA... 8.7.4 Fh FEN... 8.8 FU pyplot #1 OO API fy 7s 8.8.1 HE LHe 8.8.2 PRP. 88.3 TERRE 8.8.4 Fh FEL fal #1e 2 LIER MAS FAR. # matplotlib, NumPy Ail SciPy 92% virtualeny Al virtualenvwrapper #£ Mac OS X [4% matplotlib 8% Python [el{Q4b#E ME (Python Imaging Library, PIL) AE requests HUE IML matplotlib HBR Tit A w'H matplotlib MBA 1.1 978 Ae ° ° ° @ =< Windows |: matplotlib ° ° ° o AS HF Fd EA SPE HT SIE, WB EAT BOR SCE. EAST EPS) HAE FST, GRIESE. BEA GEA Python HEFT AE. PRGA HED) BR STUN, BRERA. MUNA, HERG NET SE TTS CEMA, HY IE] AS HED BEA IE A 2 Python #38 7 1h EER 1.2 3€ matplotlib, Numpy #4 Scipy ASESTAT matplotlib KALI IPTE Linux FA EM LABRET TIE 6 1.2.1 4Ea Cf Se LAL BE fp LS HET Linux AH AHH T Python (HE 7 (HA) Debian/Ubuntu 2k RedHat/SciLinux). CEH iP EAI MLinux RAAT. Python dif tif BASEN » WR EFT PRUE BERET HK BEA Python te EAE AT MEY . ASSIS 6 LEE Python MALY 2.7 UA be JU FA 84 RAHI) 7 FE Python 3.3 RAL MAM RIE FO ARB AK ARAMA REALE Python MAM RR 2.7( EER 26), ABRBRT Python 2.7 #A, ik#P AF Python MAM ERMARK, ZRRAKAD Hi AAo- ap RABE A A JE A) (AE Python3.3 LENA, FARIA range Hik AER xrang F ik ). ASB ELA Os SEL 4 (FD BR RAAF CS AT Be, WR EA {LEAH tin 247 SE 6 HK matplotlib 1247 HI4, ERE AL PP HL Matplotlib (14 iis #2 (Ki NumPy libpng 7! freetype 4('42.. SEV UY matplotlib, BE Ze ef NumPy FF. BER PY WLU) lal http://www.numpy.org/ I #248 NumPy HEAT IEGE 2286 1.4 VL ENAS, Python 3 773 NumPy 1.5 BRUL ERAS) NumPy #48 Rab Je KSLA SR OAR SS AAO EH ik Ute. FS FRA Python a4 SIA SE 5 4g TT VAARAF IG SAFE AEA. ER AO i£4%. NumPy 9462549 RHA ERE, IMAL, MT ILATAR 4 WATHRE, KEREALRAM ADH ET AREER, AP CHEM BS FILA AWARE T MATH, ARF NumPy 45845 SciPy A, X Python 64 +72fk4}4E it He pose Esp SEL @, ASTAKEHEMGRPHA MARY HH LAMY FSH Netlib S44 €u% (AML httpy/www.netliborg ), EMER CIS Fe Fortran 1 & FIL. 286 NumPy EAE RUF. HAT RSLERR 3 1, 48 Python-NumPy 4K fF. $ sudo apt-get install python-numpy 2. RKP IRA. $ python -c ‘import numpy; print numpy._version_' 3. ARPT MIE. @ libpng 1.2: PNG Sf Fb # (Heh zlib HE)» @ freetype 1.4+: {bJ#! True type Ff. $ sudo apt-get install build-dep python-matplotlib AEH) RedHat 3+ RedHat (t) Linux #247) (Fedora, SciLinux 8 CentOS) , Hy DM yum TARE T ee, WILT apt-get TAK. $ su -c 'yum-builddep python-matplotlib’ 1.2.2 PEE BM matplotlib RICK MAE ATIEA RS: MURS CRE, La PE oe eA — HE a) ANGLER IE RAE ELS TRE, BEA FET matplotlib A python fit] ta xt BAAR. AB LYSE TAA Da i PL ee NWA Ubuntu RSE, CEM OAT Ae A Fitri Bay. # in your terminal § sudo apt-get ins AR AY ALL RP AE: SAE HARE ALL CE AT 2 BRR: PUTAS, PIRES BON. HaRE LR aE. TY DMR A www.github.com FR HT IGUET 2, PRE BRM $ cd ~/Downloads/ $ wget https: //github.com/downloads/matplotlib/matplotlib/matplotlib-1.2. 0. tar.gz $ tar xzf matplotlib-1.2.0.tar.gz $ cd matplotlib-1.2.0 § python setup.py build $ sudo python setup.py install type: 11 python-numpy python-matplotlib python-scipy BRT REF 4 Python $48 7 #8 tt a 48 Se ae FHT Xt F418 /A abi £ http://www.packtpub.com _b % % #4 PAT Packt +5 4%, a AT AMIEL FRA AMAR B]. toRR A AMG A OTE H TVA FA] He ( http://www.packtpub.com/support! ), TAZA, AAT RRA A MN FH. 12.3 CE SAARES 2248 matplotlib, (ET FMEA Python 424TH, Distutils. 2H BEAD BRINK. PAREN Linux 1 7PSETA CREITTI, P BARA He PME eT AT EB 1.2.4 #h3ebiH HERG PY CIE ASE, AYRE Ee SPAT TEL Kies THECEAT ASAE, Python #E (HEREIN. [Python fb —ak2e Hat Python cir ST TAL. SRG PyLab Hl, LAGAT matplotlib SAKE Cdn NumPy Fi SciPy) » PILLAR VAR CME MISA AE. Python TASES HEAT PA OT Be Fe HULL Python (ye 77 SK AE AA 8 1.3 #38 virtualenv 4A virtualenvwrapper HORI TAR LE SPALL, BEALE BELE ASL FE I, HET AT a AS TEBE REE LAA MEER. GEER ABE CBE Lie TAP AL SRB RLS ETAL WU RHR A RSI A EAL BRT GS Be PEELFELEMATHSS, ROAM EY. MERIAL RAE, AT Ge EAE virtualenv. virtualeny Jé fH Tan Bicking G1 ZEN FFA A . GAMA, PRA AT EA VU FAT ASE SIT» AAT EI EP HE AST FIA ASHIK, Django Msi RAAEIE F Django 1.1 Al Python 2.3 MAIF AH, {Sut ABT BR LATE Python2.6 IF KR CEE A TEMA, ARI A AG Be Ten UNS TRARY Python (URAL) AUT SLE a He. Virtualeny HE 9% iL BRAT (i FF SHEA Dl GE AT ABE Z A. FAY, IR GE RL RHLHERR 5 SRL AS CP Te BEEP RS Ae CCE PCE AEBL) EAB, FA virtualenv fEaé (i ES MTR LAN A NT AE LH 13.1 HEA CLE 254 virtualenv, 7 22/1 H) Python Hl pip. Pip HAEIF- WHE Python KF AN LA, FY LAF CK ACH easy install TA. APM ACHAEA] pip LAUT EH. A tite SSH LA root AAT an Fair, BEAT RAE Sad se AM pip 1 Bee. # easy install pip virtualeny AS OLA MAMET » STTMERACES virtualenvwrapper, VERE DNM, HEEL AAS SASL (et So EV ZEIA . virtualenvwrapper (ISNAETFBAF http://virtualenvwrapper. readthedocs.ong/en/latest/#features. 1.3.2 PAE ‘248 virtualeny #ll virtualenvwrapper TSUKI BRM F . “#8 virtualenv Ail virtualenvwrapper. 1 $ sudo pip virtualenv $ sudo pip virtualenvwrapper DIRE AR RSE AR, HHL export $k WMH. $ export VIRTENV=~/.virtualenvs $ mkdir -p $VIRTENV # {RA source #40 (UAT) shell WARME CRE §$ source /usr/local/bin/virtualenvwrapper.sh # OR —AERAR § mkvirtualenv virtl 2. {6 virt1 HM LAE matplotlib. ~§ pip install matplotlib (virt1)usi 3. ATA) fea BEL F (toa MBl~/.bashre Po source /usr/loca/bin/virtualenvwrapper.sh FE ey FS EFA @ =mkvirtualenv ENV: @/28% 2% ENV (A MERSEIFRGR @ workon ENV: WAT GREY ENV MEIER RE. @ deactivate: ith “ii MeseaE. 6 Python $448 7 #1 #8 ak 1.4 7 Mac OS X £23¢ matplotlib ¢ Mac OS X_f-3XIK matplotlib Jf (EWI 77 TULA HT 5 python AAMAS, fA Enthought Python Distribution (EPD). i # "J LAF Uj ied EPD Wik, FARAH E REM I SE A HE A {AF EPD Ar ASTRAL BER, BRAT Dy FE ft, A CAI BD MACE, thay DAF ah CBRGUR) AY A7sh 248 Python, matplotlib AROMAT. 1.4.1 WEA ALF Apple CEPR E RBEP LEAT BEE NI KK , Homebrew 351 A] iY LA ik eee it FE AE She ., Homebrew S&F Ruby Ail Git (9, AP LUBE By FRA. er ENE Ns MCE Homebrew, Z fii 2A Python, PT AAA virtualenv MITA, BERRA matplotlib ff {8 CNumPy il SciPy), fib matplotlib. # FRB IFEANE . 1.4.2 See 1. EP AEA FN tit 6 ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go) fr SHUTTER, FT LAS brew update 2% brew doctor fr 22K#22E brew ALA ES IE WOM. 2. ia. 4 Homebrew HRMS AE path HHA RH. LAE, 1A] Homebrew % BST PE HE WE TR AS Ee AAS EEE EM. ATIF~/.bash_profile Mf (MAH /Users/[your-user-name]/.bash_profile) FFfEXHAFEMEMLL FA. export PATH=/usr/local/bin: $PATH 3. Maar ST AE TENT path HRA. Zia, Ri AT BY LAE HR Python ft) 24» brew install python --framework -universal Actin ALIN UA ZEAE Python Hr it SCMWAKE » 4. ER path AREER CASMNSIIA] AT). Ble PHLHERR 7 export PATH=/usr/local/share/python : /usr/local/bin: $PATH 5. tetit S4T HA python -version, MAE python LEAH MI) » EMMI, ZHE8S FB) Python MACE AH 2.7.3. 6. pip MAWOA REE. MRA, FIA easy install 24 pip. $ 7. FAIS, FEAL IT GE EL EA) eRe EE AE HS TT. ld, 22S virtualeny Al ;_install pip virtualenvwrappere pip install virtualenv pip install virtualenvwrapper 8. FEIN (1) ALDOR IY FL Pa pip install numpy brew install gfortran pip install scipy HE matplotlib. [a Mountain Lion 64? GLK SciPy AAR (0.11), $4407. ] 1. pip install -e gitthttps://github.com/scipy/scipytegg=scipy- dev 9. RARE AML. JASN Python FHAATUL Fits. import numpy print numpy.__version_ import scipy print scipy._version__ quit() 10. 42% matplotlib. pip install matplotlib 5 # Windows | #23¢ matplotlib LEAP BATHE IAS Hal fal 2248 Python Fil matplotlib. (i RAE WA HIE Python. 1.5.1 Hea fe FUT LMM Python FF 4 Windows 248 matplotlib 49 FI A7zh. Beth MATT i, 1 EPD, Anaconda #il Python(x,y). iit A FHE REIN REAR, IU PE OR DE, Bat nit. 8 Python $48 7 Ht FE 9: ae BBN, FEA Ta PE — UE al SCP EAE matplotlib ARATE . HEBER Ef) NumPy All SciPy (HIM AS, PAY SPAR DIT AT EAH AS 5 SETA matplotlib — WE SCH RAN E MERE, RS ae MES eT BK — AE BORE TT AT A IS WE PIRI, ONE ATES AeA, THA HEMEL APE matplotlib BR HCB CE FE IIE ME REMAKE © 1.5.2 PRED R BE CEE Hh He ok Ha Me Python Bb: Ae ATA» FIC TIL El IOHei LE IE MI AR YI EL AE “ee he Dy kw HEE A TSK WPA] matplotlib, AIA Python ARAMA THEY ALR. ATLAS }&(2SH Enthought Python Distribution(EPD) 240). (FA matplotlib MrT) FIT LEAL AMRIT CSciPy. NumPy. Python WLS AIMEE) » ILE EPD Aah 6 matplotlib LR GAT AAT, ABT LED ASSL Windows Installer 248 fF Chexe) ABET HAE. Python(x,y) Chttp://code.google.com/p/pythonxy/) Jz ¢tt Windows 32 (i, R260 % HAL FUR, Ha LT matplotlib MAEM RBC, BALE Windows ASE 1 2A matplotlib (AEA RI CM AEG BID) AYATSh. BAN Python(x,y)#l Python Hite dee SSA EARS, BY DUAL Sa MUZE Python(x,y) AE fil LAT" We 22-48 HCA, Python FE . ZE2228 Python(x,y) Li, RAMA LK Pythons Fi it SL B88] Fda fed 48 FAL Fa PEMY Python, NumPy, SciPy # matplotlib — UE‘ EMEA matplotlib (48. AAG, FR BCEL ATI) MSI RPE PORTO PE A (x86 Dk x86-64) fy bRefe Python FF. Za, Fae NumPy All SciPy MPA SUES ASAE I. ETE ‘Ge NumPy Fil SciPy Za, BATU FRU BTERTEMK matplotlib — iE Hil 2H MC IPI WAWAUETT BR To 1.5.3 #h seid VER, ZE Windows 242 ¢ ("1 matplotlib fiat 447 BL. WAY J¥, BULL F RIFSAS matplotlib MCFLY HY examples fH ae. Soe a BL HL RELHEAR 9 16 ARIE TA: Python A&R# (PIL) Python FASE (PIL) y Python $2 (IE 7 F(R b HEE I. PIL EFI PE SAN AZ PEPER DHE SURE DE TALS A TH BE POR AGE UTA], GSE (point operations) . WEE (filtering) . PUSH. WeHe. fe ELIF (arbitrary affine transforms) JE PIL 4! A200 ARMS IZA CE. Bd, FARA Sei) Me MI AP histogram WW AK es . PIL FURR AY DARA He Sf 77 Ti, OTH RUSE. PRM. AE PL. PRR PE CLR IAISATED. PUL PY LAGS PUP AS AG SN, TPR ASCH 1 Hs SHE BBE eZ Re AR A AGMA CREA) » 1.6.1 PREAER FEE 3 ULERY 7S, ULAR RIO tt PEL UU 4E Debian/Ubuntu ASE EE A NF 6 $ sudo apt-get build-dep python-imaging $ sudo pip install http: //effbot.org/downloads/Imaging-1.1.7.tar.gz 1.6.2 BRAY FUDGE ape-get RH LAA PIL HAMA ROE, FFL pip 2H PIL ANSE BRERA, HARA Ubuntu R26 HAH OE PIL RR AAS 7£ RedHav/SciLinux ABH, RS MK. # yum install python-imaging # yum install freetype-devel # pip install PIL 1.6.3 #h3eBiHA AP ETT ER PIL iS 4 ER FM. AF AY LA Uy fe) http://www.pythonware. com/library/pil/handbook/index.htm HE{T PE, BRAE FA PDF MAS: http://www.pythonware. com/media/data/pil-handbook. pdf. 10 Python #48 TAAL AE Pillow JE—-4> PIL SP32, CY ALBE HH (ty ERD dee Ra 28 fa] BH. Pillow (RASS G%, SCIHLY http://pypi.python.org/pypi/Pillow - 4 Windows *Y 4 t:, tH HY fH) iE Hil Be CF ee PIL. M http://www.pythonware. com/products/pil/ F &.exe RIPE. PITA IC HE LK PIL #1) Python ff site-packages Fak. OR fs BEE ME FD PIL, APA ert.pth MFFAMLT C:\Python27\ Lib\site-packages Ff) PIL H 3¢ 4 ‘il#] virtualenv (9 site-packages Hat Fo 1.7 232 requests Mik FATE EAR 5} BAR ABT LUGE HTTP BRA IRAE, A eR AT e BE— BET OR SCBA Ui lel. Python fy requests /4 AE Li Mo) Te EEE NK. SR Python 4-068) urllib2 HLH (TV ale AL VEM H Jy DBR HTTP PNAC, {ELE ABER Se BOE ESS BT. PERE RAY. Request HIRLE HEMT IK API, wee T HE Web IRS Mate, HEIR EE AAR. Requests PRET LL HTTP LL AAA, MCE EE SCIRAEBR UAT WL BA SER RA FE 1.7.1 PEER BH requests BURR M77 UE pip. tS AF $ pip install requests AT DAZE virtualeny MeWURSEP GUT 8 tr >, WR IFAT ATI MBG BE requests, AE AS Fe AS) 50N h BEAEH AS TARAENY requests AT EAR WEE AR requests (MNIHfE. Fink —-7E I requests (BF. import requests r = requests.get (*http://github.com/timeline.json') print r.content 1.7.2 requests f#}HPLAA ZEA, BANIAL www.github.com Misiit] URI i HTTP GET ik, LL ISON SURELY GitHub MH MaRS ile Ch Ay LH Lyla] https://github.comv/timeline #43) HTML (RAISIN TALE). ERMINE HTTP MS, ER AAT HTTP ma AA) Hie RSLERM 11 BSW YEE. CATTP (RASS. cookies, HTTP Sk 7c¥Ch. Fk to4k SOE AT NI i 1.8 KM PES matplotlib matplotlib EEE Fst A AILS FAD BE» AE ACTS FH M8 & 84) Python Fe. EFCC ESC AER re SCPE, CBS Dy ARB SD Ma HE Be GE BREE © ASA De Sp Ef SS AR A matplotlib (UAC TEM. 18.1 Ha Le QUT PT, matplotlib ACB e RUE MAC EESC (ERIN. ZERC EE SCHEP ATLLy matplotlib () SLAP DT BS RESEARCHER UCL 1.8.2 PRE TREATED, HAMAR METS. (ASRS (rcParams) Bia matplotlib.rc() 4. B-MANE, aL rcParams PHILS MRNA: BOM AK, ALL] matlotlib. rc () fe ARTES TCADR Br HI. MRE RAO MACS, ATLA matplotlib.rcdefaults () #Ffic HRA NEE. FIPS Be ROSAS TZ AT ST AH NE 6 4K matplotlib.rcParams MPT. import matplotlib as mp mpl.rcParams["lines.linewidth'] = 2 mpl.rcParams[‘lines.color'] = 'r' (UH matplotlib.rc () MAA MBIT. import matplotlib as mpl mpl.rc('lines', linewidth=2, color='r') ELTA FSA ALIA STE 0 SAME, BATT aE 1 EA TA FE A ER BEE 2 Rake AMF AEE i — A ARH TD ZO RR EH A, BRAT Rae, TE PE 12_Python $k 48 =] #2 ft Saf 5 ak import matplotlib.pyplot as plt import numpy as np t = np.arange(0.0, 1.0, 0.01) 8 = np.sin(2 * np.pi * t) # make line red plt.rcParams['lines.color'] = plt.plot (t,s) ¢ = np.cos(2 * np.pi * t) # make line thick plt.rcParams['lines.linewidth'] = '3' plt.plot (t,c) plt.show() 1.8.3 {URNT HE, A THHIESK, RGKMNAR, BEF A matplotlib.pyplot Al Numpy Bik. Cee — TRL, Wet plt.rcParams['lines.color']= 'r' iffy Gs wt PRA BIE, NET 8: Be POR MEPS ARG A), ULIAAY plt .rcParams['lines. linewidth'] = '3' SETA Wy 3 hei. WRG EEA, AMA] matplotlib.rcdefaults () Wik. 19 AWARE matplotib $A AHS matplotlib (EAI AACE PEE EE, WSCA FARRER ESC PHI REM. li SEAS SPUN RESC PE ASABE EI 1.9.1 WEA TE WRAL EEOC matplotlib I ASZE AUS FEAR RB) BEATE CAR SRA AS PE) «aR Re BEY AS TD APIS LB EAS Td RAR ANS TP A A BI — EA ANAS LIU GAGS S| ATTA SEAT 5 HES AAS AY LARA SE Dd Ui) BE AS JH FL) SER EAR 1.9.2 ROPE (BULLE AL matplotlib (te SA 2 Be EET TRE. BT WS BEE A SF RAR RELHERR 13 AZ PA ARTI MORE AT AADAC. UTTAR, BETES Z Sb, Hak ATSC LE matplotlib SRAM. iit matplotlibre ALM FE, matplotlib HEHE TIX AAG ALA StH. ZE matplotlibre SPH tL FAAS) AY LAE YE 1.9.3 AUPE REBLOA ACRES PRET ET SATA, EIA RE FEMA. k= ALE AY BEB MF © SHIH AR: WMA TM AR. te ARK, WAAR FARE til] matplotlib ALF. RCRLIC FEMI Ht matplotlibres © /AP.matplotlib/matplotlibre X¢¢#(Per user .matplotlib/matplotlibre): iW /E4E FAP MSHOME Hat F CE Windows A¥i'}!, te#isz Documents and Settings Hi). ALM matplotlib.get_configdir() @ RRA 4H MACHR AR. WB BL it asf. © =-3BRC BIC HEC Per installation configuration file): iti?! 2E python fil site-packages Hat F. RSAC, ALLE RE ROBT 2A matplotlib a, ACH Pe we te. AUC FRAT LRAT AAT AAG FE, APE EL BEN CE BET BL. BAR, AL HMAC ESC PF REEDS, SESE RUC BE. MUR CEP See SC eS ECBORAL, SRP aE E Ay TIL TAC IN, AE PGCE EAT 4E shell HigtT imide, BUA ET ED HAG IC EE A RASA BE $ python -c ‘import matplotlib as mpl; print mpl.get_configdir()' ACRES ELLA FACIL. @ axes: BEAM bR HNL TAU MME. AMR UPR AVA A (9 MS @ backend: BiH Priilll Tkagg fl cTkAGg. @ figure: fii dpi, WHBG. ABAD LK (subplot) wit. @ font: FARM font family) . FAA AIPESC ELE. @ grid: REM MME MAM. ° ° FELBI ANSE ASIN MAS. eR GE. HM. REED Albi. 14 Python $48 71 42 1h aE AR @ patch: ASE 2D MAEM, WA WIGAN. PEACE. BCS ANCE ae. @ = savefig: ALR IMIITERET PAB. PIO, BRACRMIIC HN A @ text: RAPA. SOMME CHUICARK latex brid) F @ verbose: i matplotlib ZEAUT HM fi BAI, Wi silent. helpful. debug #l debug-annoying. @ xticks Myticks: Wx, y HIN EAS MUAAE REGIE. Ard. Frid, WR EK. 1.9.4 #h FEB SORORAL TAPAS TA ABATE HERI) ETNA, BORAT UE Vill matplotlib THA NIMH, AME VET HY APT SCR. WRG BERR EEF, BY CAEP AIFF Bz mS PF EL A 5 AS PSS TEA OT Ee FE Ee 2h T AMT, RNSPAU PAA. +o ooo eo + + IK CSV SOE EA BGR M Microsoft Excel 5¢( 5A Sidi WE TERR SCPE SABE SABRES A MISC PES ABE MW SSON SRLS ABE ‘PL SGE BI) ISON. CSV fil Excel SBE FE SF ABE SBE AE AE BETAS BGE ICE BE BARR FARR EGE SD) NumPy 2H AE RCT $8 BEL BA SCN LY Ff eb 16 Python #48] tt ti #2 ae 2.1 fait ASHER he TAILS HH A A OA DIE AST IEE Zh SL A 7 TK, HERA —AE Ae BE EPA I. SERRA AE Le — LIES, WEE HE di BE GUE AT TT BUA. 2.2 MCSV SHSABGE PEAT, BRATTAS Ae BARE AA EAB fk DB HHH IC A L—CSV BL UL, CSV AES AP IRE COCR —PIC TES, WEDGES aD) Python P49 4 csv BUSHES ATT HSU CSV Cf. REN, BA BH EIN CSV tat, ARTA EBL CSV EATS AT ASIA. SE BUSCHE AL AEN 1s PIR BIC IE A AE Sh UH SO EPG 2.2.1 WE OE TEATIP, FUE chO2-data.csv XPM AAA Ea BieGE, MATE TE FRB AHH. PRATT IBE HE 75 AE SCE ASE SAC EAD AL 2.2.2 PER Fit 95 FL CSP RE T WADA CSV CHES A RR, BRK 6 1. 4TFF ch02-data.csv Xft. 2. AGERE. 3. TAA TT. 4. REAR DRILL SE A BETES Flt. ATEN SCPE MICA ITA AT 6 import csv filename = 'ch02-data.csv’ data = [] 2 TMM 17 try: with open(filename) as f: reader = csv.reader(f) header = reader.next () data = [row for row in reader] except csv.Error as e: print "Error reading CSV file at line $s: %s" % (reader.line_ num, e) sys-exit (-1) if header: print header print for datarow in data: print datarow 2.2.3 ER Me PA csv BURL AE I I ITI. Wis. JA with TAT PEE CHE CREAM £. MORO TERR TE TE HUE EKA CE, with TEP CE PENDS, CEB LE Pe DRL CEI AE Ta (BE, LAE ET OR CE AR RAT 9G EE FERC CHEM AC Wa, A csv. reader () Wik reader WR, MUA BMG TEM i. HEIR, TARA “MAINA, TEPER BAT ED HK. SCPRAST—AT ESCA FRSC EE TA, AEDES ADFT AE ASA. SOME SKIP AS REDS, FE CSV SCP RRA SCE SG» (ELE EA VARY SE EAE PRISE Po BAIR AD TEL ERM AMB RIAN RTT, ALIMAMA) A BA CAS Re DL TE 70 HE BY CSV 3 fy RAR SCA SC BD EH SIE EET FESR EB TEBE SEE CAB EE CPE ATHILAT 2 JRE Linux 4¢ 1-1] bash fit Ul head WLR AS HB, HSU Rta. $ head some_file.cev Cesk GSA, ERATE AT FER CES, ETAT IN BBE AEP BEROCtRIN FL TAL, csv. reader () WKS RUE UMA EL. NT RET SOLIDE, TY DAA AIS i ASR AES 2 A ED A 4 18 Python #48 * A(t a #2 SE a 2.2.4 #DFEBEA WRAL T fF cov BURAK IEIK, BTL — F PEP CRAY (CSV Sct API), BAL http://www. python.org/dev/peps/pep-0305/ UFR AB I BA BA SCE» BA SE EF — AE GN] NumPy ff] Loadt xt () Ti%K) ATT IE AT WAR F HE CSV BEC EE FARAH MA, tO FABRA. import numpy data=numpy. loadtxt ("ch02-data.csv',dtype="string', delimiter=',") ARNE, WT AEE NumPy iE WRG, TEBE MOTT. numpy. loadtxt () FPEMAMAN numpy.genfromext () ABER, (ELAR a Pr AG BE AE Hh Gh GEL AES aR SCRE DIS, BY ME Ee ER HE LP ES SY Ait, # Python 2.7.x RAY, csv HERA AFH Unicode #44, 5AdeIe FR SAB BX EAR AT 47 Fp oy UTF-8 34 ASCII 4444, ‘FH 44 Python CSV RASA T SE RE RAE Mi AD 1) FEO AR OE Python3.3 AG 4: AK ABRIAX AF Unicode 44, AA IK A. 2.3 A Microsoft Excel 3c #}S ABE 48 Microsoft Excel #52 iti FABRE, (ELLIS Ri SE SE RH ANSI AC AT LR a Fs BEE MA 28 Ps SH] Python "PLA PRL a 6 MA Excel SCPE A BR IU 9 HUE REE MA Excel "4 HH) CSV fest C ehh, Ra Ea Pie Bl 9 7 AEA Python MA CSV SCPFAEEA BGR. MUR AA ATSC GE AL T Microsoft Excel #% OpenOffice.org) » e141 ah 4. (FFE Gu OAR FI ay He St SY ACCP SUEAT A EAL HE 2 EE hI — PBS)» BA FE AES Excel SCH PERK CSV CPE RLAT AGT . FIC, FREE —B ERTEIR Excel Cf. iii www. python-excel.org JASE FEE, Python BI LUE RFs 3 FF Excel 3c PRE SHEE. ABE EAS Bee C4 RL ASA BSCR, TLE PG ER. BR Ly RAMA TBM Excel CFT LAE E Windows FE THe. Microsoft Excel 3 (i 3 B25 IN Ta] 2245 548 (6, ASIA Python HEREC ALIS TESA, XLRD RBM MALE 0.90, COAL BEM. xlsx MAT» B28 TMH 19 2.3.1 Hea TE PEE, PRATT BE EET AGB, FER ME TEA xd BR. BUTE pip TE REAUSE BSP BoE HT § mkvirtualenv xlrdexample (xldexample)$ pip install xlrd BASES, BAPHIH ch02-x1sxdata.x1sx Al CAGIOR. 2.3.2 DEER HEEB REA BA IE As fT MSY Excel 3 FE SEI — AE AER 1. FES AERY THES 2. ARG PAR SIT ede. HTH Cnrows) AI (ncols) HIRAM. 3. AA RA ALES, ABET ED T PER HT SES 6 import xlrd file = 'ch02-xlsxdata.xlsx" wb = xlrd.open_workbook (filename=file) ws = wb.sheet_by_name('Sheet1") dataset = [] for r in xrange(ws.nrows) : col = () for ¢ in range(ws.ncols): col.append(ws.cell(r, c).value) dataset .append (col) from pprint import pprint pprint (dataset) 2.3.3 TEE LRAT FB xlrd BORN PSO. Fed LEMS — TS ATER Cxlrd.sheet.Sheet) (T(E (Python 2% xlrd.book.Book). f+ THE FH PRIM Cxlrd.sheet.cell), BAHAR TON TEETER HK. 20 Python # #8 #1 #8 1k fe #2 Kak BULLI open_workbook () Wik, RAMA MRT —7T EM, TEI xlrd.book X#il. Book KMUAT—T> LGM A, WPM. MAL sheet_by name () WAV EM TR, WR REA THe, AY EAH sheets() Wik. sheets() Wiki I—* xlrd.sheet.Sheet 3 fl fH Wl # xlrd.sheet.Sheet KAT ASIATE, BUM AUER HOE A EEA, J etht WAFA cell () Aid AR Ui lel LARA ITE MA EMOTE. SURAT xrld.sheet .Cell HK, IFAM EEE 5 TER, FUWDE DUP AGB AEE +S Neti). HEU, xed BEAT AE I PERCE IL, SPHEWT HH RARER LE RPE, BRAT ae EEL A AS ROK Python date HR. WR FE ARAM, xird SBI] xlrd.xL_ CELL_DATE {FA ICH RAY. IAL BURBS EAI a: from datetime import datetime from xlrd import open_workbook, xldate_as_tuple cell = sheet.cell(1, 0) print cell print cell.value print cell.ctype if cell.ctype == xlrd.XL_CELL_DATE: date_value = xldate_as_tuple(cell.value, book.datemode) print datetime(*date_value) EP AF BGR ETL. AE, EEE A REE, BLE TC AAG LE FR 2.3.4 #96 cL BESSA 65535: print >> sys.stderr, "Hit limit of # of rows in one sheet (65535) break # XLS is special case where we have to ¥ save the file and just return 0 f£ = StringIO.stringI0() book. save(£) return f.getvalue() 4. ii, eK main AOU, MET OTS BP AMC, SABIE HARE RISK 30 Python #42 4 1 a TAR if name == '_main_': # parse input arguments parser = argparse.ArgumentParser () parser.add_argument ("import_file", help="Path to a fixed-width data file.") parser.add_argument ("export_format", help="Export format: json, csv, xlsx.") args = parser.parse_args() if args.import_file is None: print >> sys.stderr, "You myst specify path to import from." sys.exit (1) if args.export_format not in (‘csv', "json", *xlsx') : print >> sys.stderr, "You must provide valid export file format.” sys.exit (1) # verify given path is accesible file if not os.path.isfile(args.import_file): print >> sys.stderr, "Given path is not a file: $s" % args.import file sys-exit (1) # read from formated fixed-width file data = import_data(args.import_file) # export data to specified format # to make this Unix-lixe pipe-able # we just print to stdout print write _data(data, args.export_format) 2.7.3 “THEE BELLE, PIES AE BRS A CLE 2.4 “NEE BORIC PE ABE” ESO, BATFE stdout, MMV ERICH, BEE I — MPI MG, Mir OTT RY, EPS. MATES ASCP ESE CISON, CSV il XLSX) . UVEITIS BOT, JEMAICAIRAT import_data() Wik. Wa, BATE Python Sci 2H) CHUANG, ATID BA Ar (EMRE SCALA RE IED Bs BST fEwrite data() Wi, RANA ACR HA SIM IE (LM write_csv() B2R TMB 31 Fi) 4E CSV", BANAB—* csv.writer () Xl, AER RT ES BALI. Dal iy 5 BEA EH AA BAT AAP eB 3 — A RAE PT cat BR {ED REE Ti Ak I IEE json HUREGEAY dump () 7774 8] DURAEAHEEIR Python NYSGRLE, ST LAER MBL FP ISON HSH BRIE SEA a BETAS. AEF CSV, BUTTE Te Ase [le OES ie stdout. Excel SF thi ij SE LOBE YAU, BRI Hy hg BE Ot 4 1 J SZ AYA Excel VE SANT PEMA BURR BCE. BERRI T(E ANTI TAC Hy CIOL, APIA, SPE a PRS RE AT AN AY FAB 8 FE AT IRE — FB Jia, 4 Book SEPIRAERESIC (HAL, BORAT LUO CIEE stdout. Wa, BERT DUCA AUER ACR, teATLLit Web service 74 8H. 2.7.4 ¢h 36M SHOR, OUR REE BE CI — MS. MURA SN Heh, Bh EAR SPA. ARAN EEN: SRE. UR ABN BA, WT BB SA DSRS DN — ATA SAN A, BS aE BES IT BE — A TE Ja, BR write _data() Wik, MEM eis PSIOKIL CA write _* ik. Fi — PPE ALS SER EEL ESAT MR —7> Python 2, XARA LES EE To WR ARPA, BURT DL BRIS A SERIE, BRR SAE SEAT EA. 28 SGEESASGE SEARLE, BOR APTANA PLAGE Pe Ab Ze ti aR Bh. ERATE A CYB, EAE LAE SEE 5 UL, AE BE Ee HR BO Ce aE HARE TASTES AS, BRAY AY A i Se AH Oe A EE ATHS aR ¢E Python PUN fAl HH] SQL drivers ij ial BK » AWA BLRIT SQLite BURVE, AWE WRK BEL eb, lala AS Ht 32_Python $= (kM a {HEF SQL (VRE MES|H (MySQL Fi PostgreSQL) (HEH. ALL. HME S| SE SEPA SQL Fi 5S 2b AEA Teo IMF AEA LY SQL TA a, PU E RS BC FI SQL BOERS | La AT HAY 6 2.8.1 Hea CHE CEMREANT FM AAR ZA, PG AG BE LORE SQLite FE. $ sudo apt-get install sqlite3 Python #XiA $F SQLite, Abt A a SEF Se E ATS Python MISEHI ARG. HT LAZE IPython PUT FRCS — BALA BAS Bee OF import sqlite3 sqlite3.version sqlite3.sqlite_version FTI VAAL Pi OT HH In [1]: import sqlite3 In [2]: sqlite3.version out[2]: '2.6.0' In [3]: sqlite3.sqlite version Out [3]: '3.6.22' 3X4H, sqlite3.version i&[A] Python ff] sqlite3 MURMIMAE, sqlite_version JBI ABE SQLite HE AIIRAS. 2.8.2 SEB RR AT FE WERE EE, BELA FAG RS 1. ERERCFESIME CORAL SQLite KF). 2. CEREAL BUT ARE 3. BEI SE Pe S| FS IIH AAA UE PERU SQL, ANAT STIR FIR IAS. HN TIE A RHA BATA PIX TS PY SQL PEMA A). SELECT ID, Name, Population FROM City ORDER BY Population DESC LIMIT 1000 IXIA M City Fi T ID. Name All Population SF) (FFL) AY. ORDER B2R TMRH 33 BY FURS PE S| S42 Population HT BARMETHF, lit DESC THEE METS. LIMIT {€PCUF ERATION LEA BEA HT 1000 MIF, BEE world.sql WHIP MN. RPRAAT SHAM eA AG, FikBit 5000 AATEC. FANE MP 2-1 a6 r 2 3 aoza Mumbai (Bombay) 10500000 a 2331 Seoul 9961619) 5s 206 Slo Paulo 9968485 6 1890 Shanghai 9696300 7 ‘939 Jakarta 9604900 8 2822 Karachi 9269265 s 3387 Istanbul 8787958 10 215 Ciudad de Mexico 9591309 n 3880 Moscow 8389200 12 3793 New York 8008278 13 1532 Tokyo 7980230 a4 3891 Peking 7472000 15 456 London 7285000 16 1025 ethi 7208704 7 608 Cairo 6789479 18 1380 Teheran 6758845 19 2390 Lama 6464693 20 1992 Chongqing 6351600 a 3320 Bengkok 6320174 Z 2237 Santafé de Bogots 6260862 fA21 PSG BHEIAT SQL SC¢FFA FI SQLite BABE, FMT Fe import sqlite3 import sys if len(sys.argv) < 2: print "Error: You must supply at least SQL script.” print "Usage: %s table.db ./sql-dump.sql" 8 (sys.argv(0]) sys.exit (1) script_path = sys.argv(1] if len(sys.argv) db = sys.argv[2] else: 34 Python #48 7 2 1t HAE ae # if DB is not defined # create memory database db = ":memory:" try: con = sqlite3.connect (db) with con: cur = con.cursor() with open(script_path,'rb') as f: cur.executescript (£.read()) except sqlite3.Error as err: print "Error occured: %s" % err SABC STEM SQL SCE Y SQL ity, AALEFT FFI SQLite db SCF EAT. WR ASHE db MIF, SQLite BEA FE NE —TEGEE, BASTING. GURGES TBR, REAR SARE Ti SPIER es TT E28 LP TERME SABER Z Jes BATE AE HASH SEE TT — MERE To DO AE RE PER BE CS. import sqlite3 import sys if len(sys.argv) != 2: print "Please specify database file." sys-exit (1) db = sys.argv(1] try: con = sqlite3.connect (db) with con: cur = con.cursor() query = 'SELECT ID, Name, Population FROM City ORDER BY Population DESC LIMIT 1000° con.text_factory = str cur-execute (query) resultset = cur.fetchall() # extract column names R2R TRB 35 col_names = [cn{0] for cn in cur.description] print "10s %30s %10s" % tuple(col_names) print "="* (10+1+30+1+10) for row in resultset: print "10s $30s %10s" 8 row except sqlite3.Error as err: print "(BRROR]:", err 2.8.3 CAEL PASE, ROAEA PE RBS T BR PEC PRA. UE OIE, RATTAN, ATR PARAS. BE POR UERAGRIE. WRIT» EAR] sqlite3. error JHB AI. WI FGEBE RID, BAMBI con. cursor () PE —MiF pK. WER GIRARD, ETE FR 4) 1388 BAG FE LE RP HR FATE T REE, SPREE, DUT ACIAERIBELL cur. fetchall () PARK. WRAMIR KAR, ATLA fetchone () « 4£ cur.description Li iTAlZeme eT PER Bl BAHN Z . description ft TURE, CAT RENE. ETE BAB — TF 7 ICRI TO, RL BIA, RUMEN —FICR RAE (FEL (0) IP AAG SR CT ET AEM BRS A, ARTE RE REAR IR OL, MOAT RAT ED EAT 2.8.4 ¢h3eBiH BORE HRT IBGE. CEA MSP, BATA TA TMTAL LS, REWN As BA FMEA. WALES DOE PERE TE TT TUL, 7 Python SOME. AFT ILS ALI BCHEHE, tl MySQL. PostgreSQL #1l SQLite. BCH FE SUBLIME EL aE ABE, HN MS SQL, Oracle fil Sybase. Python X4F AMA AGEE. MAAR MEO. ATLL WR HER T, RRA IIE. (NTA AG EE HENS, UATE UH Te TEAR TES PMN, Oracle SAF —AET IMI PL/SQL, EATERMEN SQL. WE BREN Oracle EW MS SQL, HAEMITA TLE T. ARAN, SQLite AIK MySQL Hci RAN ARES |G (MyISAM il InnoDB) MUTE. AES THEM, (LLC 36 Python $48 9 1b fe TAR ‘bRAE SQL Chttp://en.wikipedia.org/wiki/SQL:2011) Z2ik 3A Sam ABE A TSA 5 29 BRB ATT FIA MU fa] AFB ECSTASY ETE RNS HAAN, REMAN AA, BTR. PRI. TEA AERA AB BE A PL CE A AR ZL, RATE TERE, APRA Coutlier) Lt, JE AW Cath CBG. (EE, EEA AEA AP RAINE URE, ADE ROME Ai. mee the. SUA CRE Eo 2.9.1 WER TE FUT EF CAAA Python $RHEBERR, ANG BEPC E FEAT, BRAVES 4H K]—MAD. FER Le, PAE (Median absolute deviation, MAD) J&A KHRPEM (fe —PARRD PEASE BE Pa) EE A — PPE. EPR AA, AE RTE ASE BP, ALOE AS ATR SiH. 2.9.2 PEER FRA T uf AY MAD OR RS SR ASAE PTE AR Ee 1. 4p O~1 Zl] ABAHLAAE (normally distributed random data) » 2. MAHA. 3. Al is_outlier () WiAHWF MIL. 4. LPP BOERS (x Al filtered) MER. MRENNEKA. import numpy as np import matplotlib.pyplot as plt def is_outlier(points, threshold=3.5): ® outlier: AEE a FEA. PORTA. ATI LA) “SAL: SACRE NR, SEMA IR eS CRE) MARA PSC REIN. ARSE PR AR. CRED BIR TRE 87 Returns a boolean array with True if points are outliers and False otherwise. Data points with a modified z-score greater than this # value will be classified as outliers. # transform into vector if len(points. shape) points = points[:,None] ry # compute median value median = np.median(points, axis=0) # compute diff sums along the axis diff = np.sum((points ~ median)**2, axis=-1) diff = np.sqrt (diff) ¥ compute MAD med_abs_deviation = np.median (diff) # compute modified z-score # http: //www.itl.nist.gov/div898/handbook/eda/section4/eda43.htm# # Iglewicz modified 2 score = 0.6745 * diff / med_abs deviation # return a mask for each outlier return modified_z_score > threshold # Random data x = np. random. random (100) # histogram buckets buckets = 50 # Add in a few outliers x = np.r_[x, -49, 95, 100, -100] # Keep valid data points # Note here that #/ "=" is logical NOT on boolean numpy arrays filtered = x{~is_outlier(x)] # plot histograms plt.figure() plt.subplot (211) 38 Python i871 ER plt-hist (x, buckets) plt.xlabel (*Raw') plt. subplot (212) ered, buckets) pit. plt.xlabel (‘Cleaned’) >1t «show () TER, 7E NumPy 'f, “~" BREA BEER “SBE TE, PEI YEAH As BA Ly IERIE. AMBIT, Ze pylab Hist F JAH Python. $ ipython -pylab PEER Fo In [1]: ~numpy. array (False) Out[1]: True UPS 2-2 tas AL PS AST EL Ty PL SPA BR TARR ZT As WAL} Ly SBR TRAE. Glos T & PCI 80 2 4 08 of 70 22 yA Se ELS Fa 9: LA PEE RATT AT DA 2 HB HAART MIL, tL AT LLeE ill ATLA Cox plot) . BOREL ABR FDU AY EI, A Be ioe A HS? * AP, BOPP AEE 5a th Pt. EDU} (PL BIR TMH 39 FEA) SECA EA AER DU Fp Air Eh BB, PE Ae 5 HE HH whiskers) Sis 7 SRE. RE AYU ACE EL Fin Bear Blt. from pylab import * # fake up some data spread= rand(50) * 100 center = ones(25) * 50 # generate some outliers high and low flier_high = rand(10) * 100 + 100 flier_low = rand(10) * -100 # merge generated data set data = concatenate((spread, center, flier high, flier_low), 0) subplot (311) # basic plot + 'gx' defining the outlier plotting properties boxplot (data, 0, 'gx") # compare this with similar scatter plot subplot (312) spread_1 - concatenate((spread, flier_high, flier_low), 0) center_1 = ones(70) * 25 scatter (center_1, spread_l) xlim({0, 50]) # and with another that is more appropriate for # scatter plot subplot (313) center_2 = rand(70) * 50 scatter (center_2, spread_1) xlim({0, 501) show () GPE 2-3 ia, APB EH x TEAR i bias tH Ee BL 40 Python $48 71 HL 1 RE EM FA PS AC PRY FCB as TALI SR A. AL RE XR LAB 25, BT VARA EA. Hh RAT TG TEE FE OK 5p AL Cini ) ANTE SR A EL (outlier) » ZEB, Ze X BILE REAL) ANTE O~SO MITE TELA, ESCA a a te LS ALTO ANlel, CoA MS Ze Y fl bE BELLE SE NEAL. TE POA as, BU BUA CLEA PE oy) CEASA EAE UL BGR SAYS ARIAL, EEE ALIN Wein ES aa TER Ee # generate uniform data points x = le6*rand(1000) y = rand(1000) figure () # create first subplot subplot (211) # make scatter plot scatter (x, y) # limit x axis 2H TRB 41 xlim(le-6, 126) # create second subplot subplot (212) # make scatter plot scatter (x,y) # but make x axis logarithmic xscale('log') # set same x axis limit xlim(le-6, 1e6) show () HOPS 2-4 rake IER. 200000 400000, 00000 "8000001000000 10° 10* 10” 107 10? 10° 10' 10 10° 10* 10° 2-4 WSS Cs 47D ABL Cmissing value) S296? BTL NumPy dnaeae ka Mesie RAL, BATA LAS UAE HERR ATT TE EEL, DRE ATE. Meg WO BRA ARIE BE SE Ao bas i CE SS Hh CES A PY A — 2 AS “BUM. filttl, OH, Ohio, OHIO, US-OH Fl OH-USA ABARZEIELH MY Ohio M. CERAM FB, Fee E11] ALF) Microsoft Excel A# OpenOffice.org Cale fF, HSH ABET F 42 Python $48 71 10 (te EE Byte. AMAA, AaB Python 424s FFT CU RAT AK. WRC RE CSV SCHAAR CSV SCE, ATLA PEI ACA ai AT IPE, BER AE AE 6 ZETA SE T BORA AZ Ja, ATLAS Python {UIST MILE PAL, HEBEL DET PH, DIRIK OR BGR LIE BME. GH MIE, FL readlines () Wii IC PERIATET. TP AV RME Python 75 HDR E AT UE AT BBR TE 2.9.3 hci 4) META MAY ANAL (HM AGF” Hb, Chl OpenRefine, 41 https://github.com/ OpenRefine), $2 PET ERTS ” HSE BE BAERS 6 RUG, HEMEL RA LE SI. ATS SNS DRT BSE IR FSAI ART AH 9 FA Po WU RAE: 2] EA SP EE AS SA BAT, FS (statistical models) AUKFEFEI@ (sampling theory) 2.10 jiRELAR RGEC Python 4} 48 KMb ESCHER CPE BATES | UN, WR AGAIN —7 LE MB ft FOCth, BURA 2GB A FERIELARTE SDL, Python Ab $b Ra AS 2549 EA Ue By AS eS I A PALA TR Se GE IA BALMER PAB TSC AATF THE GASP) ER AIS with open('/tmp/my_big_file', ‘r') as bigfile: for line in bigfile: # line based operation, like ‘print line’ (Ae On ARBER SC EHP SEE, RAT — MAEM E OBE RR TE. BRAT AG BE FILS UAE KS BP BL RGM 10 Wik, Wl seek () tell () .read() Al next (). KHETEKS BREE AT C ILE ORUEPE RSC EMI) » UIST SAE, (UEHUE DE RSNA, TEMA ATA 2.10.1 PREPIR FUSCA AY AE BY DFE BET, OUR T RANMA EA. Ge, ALLER 1000 47, Y8JaFH Python free AIF ICE AT UE TT hE, AUT BIR TM 43 import sys filename = sys.argv[1] # must pass valid file name with open(filename, 'rb') as hugefile: chunksize = 1000 readable ="! # f you want to stop after certain number of blocks # put condition in the while while hugefile: 4# if you want to start not from Ist byte # do a hugefile.seek(skipbytes) to skip # skipbytes of bytes from the file start start = hugefile.tell() print "starting at:", start file block = '' # holds chunk_size of lines for _ in xrange(start, start + chunksize): Tine = hugefile.next () file block = file block + line print "file block’, type(file block), file block readable = readable + file block # tell where are we in file # file I0 is usually buffered so tell() # will not be precise for every read. stop = hugefile.tell() print 'readable', type(readable), readable print ‘reading bytes from as to $s! § (start, stop) print ‘read bytes total:', len(readable) # if you want to pause read between chucks # uncomment following line # raw_input () ZE Python fir OAT MP RE SE PBL ETS, BRC EB FBR. $ python ch02-chunk-read.py myhugefile.dat 2.10.2 fF = PATA A AE EE BN CAPT EAT ACL, AEE CIR AE FE, FRC, 26 for (RAMTEC. TECH Ba) RANE CARL WAH next () RoR. PATER ICHE IN AT, PRE SCPETBBLS AT. T th Han PR, RAT AIHE file_block JNEVHiHIEH readable /, BUTEA. PEAT ALE 1) — BEET EDR YE HE DT BEA REE BE 4 HARA»

You might also like