NumPy 1.5 Python Base Beginner's Guide

NumPy 1.5 Python Base Beginner's Guide: An acion-packed guide for the easy-to-use, high performance, Python based free open source NumPy mathemaical library using real-world examples

Download

Introduction

Scienists, engineers, and quanitaive data analysts face many challenges nowadays. Data scienists want to be able to do numerical analysis of large datasets with minimal programming efort. They want to write readable, eicient, and fast code, that is as close as possible to the mathemaical language package they are used to. A number of accepted soluions are available in the scieniic compuing world.

The C, C++, and Fortran programming languages have their beneits, but they are not interacive and are considered too complex by many. The common commercial alternaives are, among others, Matlab, Maple, and Mathemaica. These products provide powerful scriping languages, however, they are sill more limited than any general purpose programming language. There are other open source tools similar to Matlab such as R, GNU Octave, and Scilab. Obviously, they also lack the power of a language such as Python.

Python is a popular general purpose programming language widely used by in the scieniic community. You can access legacy C, Fortran, or R code easily from Python. It is objectoriented and considered more high-level than C or Fortran. Python allows you to write readable and clean code with minimal fuss. However, it lacks a Matlab equivalent out of the box. That's where NumPy comes in. This book is about NumPy and related Python libraries such as SciPy and Matplotlib

What is NumPy? 
NumPy (from Numerical Python) is an open source Python library for scieniic compuing. NumPy lets you work with arrays and matrices in a natural way. The library contains a long list of useful mathemaical funcions including some for linear algebra, Fourier transformaion, and random number generaion rouines. LAPACK, a linear algebra library, is used by the NumPy linear algebra module if you have LAPACK installed on your system; otherwise NumPy provides its own implementaion. LAPACK is a well known library originally writen in Fortran—which Matlab relies on as well. In a sense, NumPy replaces some of the funcionality of Matlab and Mathemaica, allowing rapid interacive prototyping

We will not be discussing NumPy from a developing contributor's perspecive, but more from a user's perspecive. NumPy is a very acive project and has a lot of contributors. Maybe, one day you will be one of them!

What this book covers 
Chapter 1, NumPy Quick Start, will guide you through the steps needed to install NumPy on your system and create a basic NumPy applicaion.

Chapter 2, Beginning with NumPy Fundamentals, introduces you to NumPy arrays and fundamentals.

Chapter 3, Get into Terms with Commonly Used Funcions, will teach you about the most commonly used NumPy funcions—the basic mathemaical and staisical funcions

Chapter 4, Convenience Funcions for Your Convenience, will teach you about funcions that make working with NumPy easier. This includes funcions that select certain parts of your arrays, for instance based on a Boolean condiion. You will also learn about polynomials and manipulaing the shape of NumPy objects.

Chapter 5, Working with Matrices and ufuncs, covers matrices and universal funcions. Matrices are well known in mathemaics and have their representaion in NumPy as well. Universal funcions (ufuncs) work on arrays element-by-element or on scalars. ufuncs expect a set of scalars as input and produce a set of scalars as output.

Chapter 6, Move Further with NumPy Modules, discusses how universal funcions can typically be mapped to mathemaical counterparts such as add, subtract, divide, muliply, and so on. NumPy has a number of basic modules that will be discussed in this chapter.

Chapter 7, Peeking into Special Rouines, describes some of the more specialized NumPy funcions. As NumPy users, we someimes ind ourselves having special needs. Fortunately, NumPy provides for most of our needs.

Chapter 8, Assured Quality with Tesing, will teach you how to write NumPy unit tests.

Chapter 9, Ploing with Matplotlib, discusses how NumPy on its own cannot be used to create graphs and plots. This chapter covers (in-depth) Matplotlib, a very useful Python ploing library. Matplotlib integrates nicely with NumPy and has ploing capabiliies comparable to Matlab.

Chapter 10, When NumPy is Not Enough: SciPy and Beyond, discuss how SciPy and NumPy are historically related. This chapter goes into more detail about SciPy. SciPy, as menioned in the History secion, is a high level Python scieniic compuing framework built on top of NumPy. It can be used in conjuncion with NumPy.

Who this book is for 
This book is for you the scienist, engineer, programmer, or analyst looking for a high quality open source mathemaical library. Knowledge of Python is assumed. Also, some ainity or at least interest in mathemaics and staisics is required
Share This