Jump to ratings and reviews
Rate this book

NumPy Beginner's Guide

Rate this book
An action packed guide using real world examples of the easy to use, high performance, free open source NumPy mathematical library Overview In Detail NumPy is an extension to, and the fundamental package for scientific computing with Python. In today's world of science and technology, it is all about speed and flexibility. When it comes to scientific computing, NumPy is on the top of the list. NumPy Beginner's Guide will teach you about NumPy, a leading scientific computing library. NumPy replaces a lot of the functionality of Matlab and Mathematica, but in contrast to those products, is free and open source. Write readable, efficient, and fast code, which is as close to the language of mathematics as is currently possible with the cutting edge open source NumPy software library. Learn all the ins and outs of NumPy that requires you to know basic Python only. Save thousands of dollars on expensive software, while keeping all the flexibility and power of your favourite programming language.You will learn about installing and using NumPy and related concepts. At the end of the book we will explore some related scientific computing projects. This book will give you a solid foundation in NumPy arrays and universal functions. Through examples, you will also learn about plotting with Matplotlib and the related SciPy project. NumPy Beginner's Guide will help you be productive with NumPy and have you writing clean and fast code in no time at all. What you will learn from this book Approach The book is written in beginner’s guide style with each aspect of NumPy demonstrated with real world examples and required screenshots. Who this book is written for If you are a programmer, scientist, or engineer who has basic Python knowledge and would like to be able to do numerical computations with Python, this book is for you. No prior knowledge of NumPy is required.

310 pages, Paperback

Published April 25, 2013

14 people are currently reading
48 people want to read

About the author

Ivan Idris

14 books26 followers
Ivan Idris is the author of NumPy Beginner's Guide and NumPy Cookbook. He was born in Bulgaria from Indonesian parents. He moved to the Netherlands in the 1990s, where he graduated from high school and got a MSc in Experimental Physics.

His graduation thesis had a strong emphasis on Applied Computer Science. After graduating he worked for several companies as Java Developer, Datawarehouse Developer and QA Analyst.

His main professional interests are Business Intelligence, Big Data and Cloud Computing. Ivan Idris enjoys writing clean testable code and interesting technical articles.

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
6 (24%)
4 stars
11 (44%)
3 stars
8 (32%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 9 of 9 reviews
1 review
June 30, 2013
When one is dealing with numerical methods, there are many good reasons to do so using free/open numerical tools ... But, whether you happen to be doing "real" work for a company or to be a PhD candidate, too often you are confronted with the dilemma of investing your time in learning alternative and more productive ways of doing your work (i.e. the promising combination python/NumPy) and actually having your work done by the due date.

As a PhD student myself, article reviewing, code debugging, data analysis and other obligations and deadlines have been so far the reason not to get the grips with NumPy ... until I found Mr. Idris's "NumPy - Beginner's guide"!

Personally, I find the most remarkable feature of the book to be the good compromise the author has found between:
* the amount and relevance of the information offered,
* the clarity of the exposition and
* the immediate applicability of the information provided.

As a first remark, the book covers many of the most recurrent techniques I need to use during my research activity, and thus the book can very well serve as a reference. However, do not mistake the book as yet another "How To" guide, or a simple "Cook-Book": far from that, you see an evident and conscious effort to lead the reader through different capabilities of NumPy in a bottom-up, constructive manner: this is a book you can actually learn from.

Another highlight of the book is the early focus on data processing from text files. Instead of presenting this feature in an arcane manner detached from other features (as is often the case in many programming guides), the author presents briefly but in enough detail the text-file-processing capabilities of NumPy intertwined with several statistical analysis tools.

Of course, there is a space devoted to most common procedures for linear algebra, signal processing, efficient sorting algorithms, ...

Yet another success of the book concerns the graphical representation of information; the book devotes a full chapter to matplotlib and to explain how to produce the most common graphs needed to effectively communicate one's work . This does not prevent the author to use matplotlib if needed in previous chapters, offering in any of such occasions at least the minimal explanation of what is being done.

To conclude, I believe this book can help users/developers of numerical methods to become independent and proficient users of NumPy: a reader minimally familiar with the python syntax will be able, in very short time, to port her/his existing numerical tools into NumPy, thus acquiring the experience needed to devise new, more efficient tools taking advantage of the advantages of the python/NumPy duo.
3 reviews
June 13, 2013
I have been reviewing Ivan Idris Numpy ‘beginner’s guide’, second edition of a great book. While in the first edition he started explaining iPython and Matplotlib, this second is an even more practical guide: “less theory, more results”.

http://www.packtpub.com/numpy-mathema...

The first chapter deals with essentials as Python, iPython and libraries as NumPy, Matplotlib and Scipy and ends with applications to vectors and arrays using those tools. Just then in second chapter he goes deep into NumPy fundamentals with many exercises using arrays, including passing from an array to a list (exercise that helps to understand what are the differences and advantages of each data type.)
Chapter 3 relates to common functions and applications to, example, finances and times. Chapter 4 deals with how to fit polynomials and also Smoothing and as an example, the Hanning function. Chapter 5 is related to matrices and “ufuncs” (short by universal functions) including how to create it and use with a code. These ideas are applied to a classic, Fibonacci numbers but also to Lissajous curves and the drawing of sawtooth and triangle waves, and also how to work with bitwise comparison operations. Up to this point this is the perfect companion for a crash course on the uses of Python and libraries like NumPy; however is also strong enough to be used as part of a college lecture or as the tool that should not be absent in your tool box and desk. Is hard to summarize further chapters; is a very good book because Idris shows his ability to explain in clear and concise sentences and then he applies immediately to exercises in a variety of areas. If you can´t find what you need in this book, the only solution might be a do it yourself solution, based in the’ big book’, the web! In chapter 6 he explains applications to Linear Algebra including eigenvalues and eigenvectors, Fourier Transform, random numbers and applications to a gambling show. In chapter 7 he works with complex numbers, including sorting and searching, and even plays with Bessel functions. Chapter 8 deals on Assuring Quality with Testing and how to assert and compare arrays. Chapter 9 is one of my favorites, because Idris shows excellent examples on how to plot using Matplotlib, including animations! If you cannot impress your audience with these tools, likely they are dead. In Chapter 10 he goes deeper on libraries like Scipy (NumPy + SciPy are essentials on dealing with big arrays of data, like images) but this time Idris also give us hints in how to deal with audio processing. Finally in Chapter 11, he talks about PyGame along with Matplotlib, Numpy and applications to … Artificial Intelligence, and simulations of life.
Certainly one book can hardly cover ALL ‘what we need’. However, is up to us to get the most of a tool. If you work on Engineering or Science and are in need to deal with data, vectors, matrices, arrays, sounds or images, if you need to plot and to make things evident to others, if you need a data handling Swiss tool in your toolkit, this is it, clear, concise, full of many examples in so many areas that you will always have something to talk with others even from areas different to yours. Read it, use it, enjoy it.
1 review
June 7, 2013
NumPy Beginner's Guide, Second Edition, by Ivan Idris, is realy valuable resource for efficient leveraging NumPy (derived from Numerical Python)- high performance mathematical library for Python. Having in mind that NumPy is library for scientific computing, allowing rapid interactive prototyping, this book makes effort of deep understanding of NumPy's nature much more interesting, being written in learn-by-doing manner.

Initially intended for beginners, at it's very beginning, book guides you through the process of installation of Python, NumPy, Matplotlib, SciPy and IPython on all major OS platforms. So, even developers and scientists having no prior experience with Python can easily catch up.

NumPy Beginner's Guide is structured as action guide. At the beginning of each chapter, there is just enough theory to get you introduced to given subject, and then you encounter plethora of "Time for action" exercises with expected results shown. There is pop-quiz in each chapter, with short, multiple choice answers questions, convenient for easier memorizing and refreshing what's learned.

Throughout book's eleven chapters, it starts with NumPy fundamentals and commonly used functions; continues with matrices, introduces different NumPy modules and some special routines, quality assurance, plotting histograms and drawing distributions with Mathplotlib, and eventually ends with SciPy, MATLAB, Octave and Pygame. Mentioning Pygame seemed a bit odd, but it makes perfect sense after working out through this chapter. Pygame and NumPy go together very well, because games involve lots of computation, and that's where NumPy and SciPy blend in. Plus, learning is much more fun when laid around playing games. Especially interesting are "Time for action" exercises, step-by-step recipes, involving arrays manipulation, analyzing stock returns, calculating the exponential moving average, dealing with Fibonacci array, decomposing matrices, shifting frequencies, simulating a game show, mortgage and loan calculations, plotting stock volume, 3D plotting, animating objects and creating a simple game. If you are worried about not knowing anything about Hamming or Kaiser window, Bollinger bands or Lissajous curves - fear no more, it will be so easy to comprehend after working out through exercises in this book. The book is very easy to read and follow and all concepts aren't hard to understand.

Full table of contents is available here
http://www.packtpub.com/numpy-mathema...

You can have a look at some sample chapters on publisher's web page (Packt Publishing)
http://www.packtpub.com/sites/default...

Complete source code is available for download from the book's page, but it's strongly recommended not just to copy and paste it. You'll learn much more efficiently if actually type the code in by hand.
Profile Image for Tuula.
9 reviews1 follower
August 10, 2017
I got a review copy of NumPy Beginner’s Guide – Second Edition from Packt Publishing. The book is relatively thick, a bit over 300 pages and packed with content.

As usual with Packt books, it starts by introducing the tools and giving detailed instructions on installing them, before diving into actual subject. The book starts easy, teaching how to create arrays and manipulate vectors. Soon more concepts are introduced starting from slicing and ending to SciPy. There is even a chapter about testing, which I found especially interesting to read.

I liked how there are pop quizzes to help the reader to check if he understood what he just read. They aren't really hard, but still quite fun. Layout of the book is clear and makes the books easy to read. There are plenty of examples and graphs in the book that help to explain the concepts.

The book is very suited for a person who is not familiar with NumPy and wants to learn it. It covers lot of ground in sufficient detail. I felt that reading this book was good investment of time and enjoyed it.

The book is available at Packt Publishing: http://www.packtpub.com/numpy-mathema...
1 review
June 14, 2013
Numpy Beginner's Guide is a great book for computer science students, data scientists or analysts of any kind.

I was particularly impressed by the author's technique of dividing concepts into small, easily digestible chunks, followed by NumPy implementations of each concept.

The book provides a comprehensive explanation of the methods of numerical computation and representation available in NumPy, which is especially useful for those data analysts who are looking to translate their knowledge of numerical analysis to the computer. The introductory material is also great at helping newbies to the field learn to get comfortable with working with large amounts of data in files and process them for analysis.

The author concludes the book with an overview of the capabilities of NumPy and an introduction to other tools like MatLab, MatPlotLib and SciPy.

NumPy is available from the Packt Publishing's website.
1 review1 follower
June 13, 2013
I was given a review copy of this book and liked it. I have added a detailed chapter wise review of the book here http://nipunbatra.wordpress.com/2013/...

USP
Talks about varieties of topics ranging from finance to signal processing and introduces functions through practical examples.
2 reviews
August 11, 2013
Great book, let's you discover how arrays are stored efficiently, such as list of lists, the more efficency in large arrays.

I recommend it
Displaying 1 - 9 of 9 reviews

Can't find what you're looking for?

Get help and learn more about the design.