ebook img

SciPy and NumPy PDF

67 Pages·2012·2.68 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview SciPy and NumPy

SciPy and NumPy Eli Bressert Beijing•Cambridge•Farnham•Ko¨ln•Sebastopol•Tokyo 9781449305468_text.pdf 1 10/31/12 2:35 PM SciPyandNumPy byEliBressert Copyright©2013EliBressert.Allrightsreserved. PrintedintheUnitedStatesofAmerica. PublishedbyO’ReillyMedia,Inc.,1005GravensteinHighwayNorth,Sebastopol,CA95472. O’Reilly books may be purchased for educational, business, or sales promotional use. Online editionsarealsoavailableformosttitles(http://my.safaribooksonline.com).Formoreinformation, contactourcorporate/institutionalsalesdepartment:(800)[email protected]. InteriorDesigner: DavidFutato ProjectManager: PaulC.Anagnostopoulos CoverDesigner: RandyComer Copyeditor: MaryEllenN.Oliver Editors: RachelRoumeliotis, Proofreader: RichardCamp MeghanBlanchette Illustrators: EliBressert,LaurelMuller ProductionEditor: HollyBauer November2012: Firstedition RevisionHistoryfortheFirstEdition: 2012-10-31 Firstrelease Seehttp://oreilly.com/catalog/errata.csp?isbn=0636920020219forreleasedetails. NutshellHandbook,theNutshellHandbooklogo,andtheO’Reillylogoareregisteredtrademarks ofO’ReillyMedia,Inc.SciPyandNumPy,theimageofathree-spinedstickleback,andrelatedtrade dressaretrademarksofO’ReillyMedia,Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimedastrademarks.Wherethosedesignationsappearinthisbook,andO’ReillyMedia,Inc., wasawareofatrademarkclaim,thedesignationshavebeenprintedincapsorinitialcaps. Whileeveryprecautionhasbeentakeninthepreparationofthisbook,thepublisherandauthors assume no responsibility for errors or omissions, or for damages resulting from the use of the informationcontainedherein. ISBN:978-1-449-30546-8 [LSI] 9781449305468_text.pdf 2 10/31/12 2:35 PM Table of Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 WhySciPyandNumPy? 1 1.2 GettingNumPyandSciPy 2 1.3 WorkingwithSciPyandNumPy 3 2. NumPy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1 NumPyArrays 5 2.2 BooleanStatementsandNumPyArrays 10 2.3 ReadandWrite 12 2.4 Math 14 3. SciPy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1 OptimizationandMinimization 17 3.2 Interpolation 22 3.3 Integration 26 3.4 Statistics 28 3.5 SpatialandClusteringAnalysis 32 3.6 SignalandImageProcessing 38 3.7 SparseMatrices 40 3.8 ReadingandWritingFilesBeyondNumPy 41 4. SciKit:TakingSciPyOneStepFurther. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 4.1 Scikit-Image 43 4.2 Scikit-Learn 48 5. Conclusion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 5.1 Summary 55 5.2 What’sNext? 55 iii 9781449305468_text.pdf 3 10/31/12 2:35 PM 9781449305468_text.pdf 4 10/31/12 2:35 PM Preface Python,ahigh-levellanguagewitheasy-to-readsyntax,ishighlyflexible,whichmakes itanideallanguagetolearnanduse.ForscienceandR&D,afewextrapackagesareused tostreamlinethedevelopmentprocessandobtaingoalswiththefeweststepspossible. Among the best of these are SciPy and NumPy. This book gives a brief overview of differenttoolsinthesetwoscientificpackages,inordertojumpstarttheiruseinthe reader’sownresearchprojects. NumPy and SciPy are the bread-and-butter Python extensions for numerical arrays andadvanceddataanalysis.Hence,knowingwhattoolstheycontainandhowtouse themwillmakeanyprogrammer’slifemoreenjoyable.Thisbookwillcovertheiruses, rangingfromsimplearraycreationtomachinelearning. Audience Anyonewithbasic(andupward)knowledgeofPythonisthetargetedaudienceforthis book.AlthoughthetoolsinSciPyandNumPyarerelativelyadvanced,usingthemis simpleandshouldkeepevenanovicePythonprogrammerhappy. ContentsofthisBook This book covers the basics of SciPy and NumPy with some additional material. The first chapter describes what the SciPy and NumPy packages are, and how to accessandinstallthemonyourcomputer.Chapter2goesoverthebasicsofNumPy, startingwitharraycreation.Chapter3,whichcomprisesthebulkofthebook,covers asmallsampleofthevoluminousSciPytoolbox.Thischapterincludesdiscussionand examples on integration, optimization, interpolation, and more. Chapter 4 discusses two well-known scikit packages: scikit-image and scikit-learn. These provide much more advanced material that can be immediately applied to real-world problems. In Chapter5,theconclusion,wediscusswhattodonextforevenmoreadvancedmaterial. v 9781449305468_text.pdf 5 10/31/12 2:35 PM ConventionsUsedinThisBook Thefollowingtypographicalconventionsareusedinthisbook: Plaintext Indicates menu titles, menu options, menu buttons, and keyboard accelerators (suchasAltandCtrl). Italic Indicatesnewterms,URLs,emailaddresses,filenames,fileextensions,pathnames, directories,andUnixutilities. Constantwidth Indicatescommands,options,switches,variables,attributes,keys,functions,types, classes, namespaces, methods, modules, properties, parameters, values, objects, events, event handlers, XML tags, HTML tags, macros, the contents of files, or theoutputfromcommands. Thisiconsignifiesatip,suggestion,orgeneralnote. Thisiconindicatesawarningorcaution. UsingCodeExamples Thisbookisheretohelpyougetyourjobdone.Ingeneral,youmayusethecodein this book in your programs and documentation. You do not need to contact us for permission unless you’re reproducing a significant portion of the code. For example, writing a program that uses several chunks of code from this book does not require permission.SellingordistributingaCD-ROMofexamplesfromO’Reillybooksdoes require permission. Answering a question by citing this book and quoting example codedoesnotrequirepermission.Incorporatingasignificantamountofexamplecode fromthisbookintoyourproduct’sdocumentationdoesrequirepermission. Weappreciate,butdonotrequire,attribution.Anattributionusuallyincludesthetitle, author,publisher,andISBN.Forexample:“SciPyandNumPybyEliBressert(O’Reilly). Copyright2013EliBressert,978-1-449-30546-8.” Ifyoufeelyouruseofcodeexamplesfallsoutsidefairuseorthepermissiongivenabove, [email protected]. We’dLiketoHearfromYou Pleaseaddresscommentsandquestionsconcerningthisbooktothepublisher: vi | Preface 9781449305468_text.pdf 6 10/31/12 2:35 PM O’ReillyMedia,Inc. 1005GravensteinHighwayNorth Sebastopol,CA95472 (800)998-9938(intheUnitedStatesorCanada) (707)829-0515(internationalorlocal) (707)829-0104(fax) Wehaveawebpageforthisbook,wherewelisterrata,examples,linkstothecodeand datasetsused,andanyadditionalinformation.Youcanaccessthispageat: http://oreil.ly/SciPy_NumPy Tocommentorasktechnicalquestionsaboutthisbook,sendemailto: [email protected] Formoreinformationaboutourbooks,courses,conferences,andnews,seeourwebsite athttp://www.oreilly.com. FindusonFacebook:http://facebook.com/oreilly FollowusonTwitter:http://twitter.com/oreillymedia WatchusonYouTube:http://www.youtube.com/oreillymedia Safari® BooksOnline SafariBooksOnline(www.safaribooksonline.com)isanon-demanddigital librarythatdeliversexpertcontentinbothbookandvideoformfromthe world’sleadingauthorsintechnologyandbusiness. Technology professionals, software developers, web designers, and business and cre- ative professionals use Safari Books Online as their primary resource for research, problemsolving,learning,andcertificationtraining. SafariBooksOnlineoffersarangeofproductmixesandpricingprogramsfororgani- zations,governmentagencies,andindividuals.Subscribershaveaccesstothousandsof books, trainingvideos, andprepublicationmanuscriptsinonefullysearchabledata- basefrompublisherslikeO’ReillyMedia,PrenticeHallProfessional,Addison-Wesley Professional,MicrosoftPress,Sams,Que,PeachpitPress,FocalPress,CiscoPress,John Wiley&Sons,Syngress,MorganKaufmann,IBMRedbooks,Packt,AdobePress,FT Press,Apress,Manning,NewRiders,McGraw-Hill,Jones&Bartlett,CourseTechnol- ogy,anddozensmore.FormoreinformationaboutSafariBooksOnline,pleasevisitus online. Acknowledgments I would like to thank Meghan Blanchette and Julie Steele, my current and previous editors, for their patience, help, and expertise. This book wouldn’t have materialized withouttheirassistance.Thetips,warnings,andpackagetoolsdiscussedinthebook Preface | vii 9781449305468_text.pdf 7 10/31/12 2:35 PM were much improved thanks to the two book reviewers: Tom Aldcroft and Sarah Kendrew.Colleaguesandfriendsthathavehelpeddiscusscertainaspectsofthisbook and bolstered my drive to get it done are Leonardo Testi, Nate Bastian, Diederik Kruijssen, Joao Alves, Thomas Robitaille, and Farida Khatchadourian. A big thanks goes to my wife and son, Judith van Raalten and Taj Bressert, for their help and inspiration,andwillingnesstodealwithmebeinghuddledawaybehindthecomputer forendlesshours. viii | Preface 9781449305468_text.pdf 8 10/31/12 2:35 PM

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.