My Account Log in

4 options

IPython interactive computing and visualization cookbook / Cyrille Rossant.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Rossant, Cyrille, author.
Language:
English
Subjects (All):
Python (Computer program language).
Physical Description:
1 online resource (1 v.) : ill.
Edition:
1st edition
Other Title:
Over 100 hands-on recipes to sharpen your skills in high-performance numerical computing and data science with Python
Place of Publication:
Birmingham, [England] : Packt Publishing, 2014.
System Details:
text file
Biography/History:
Rossant Cyrille: Cyrille Rossant, PhD, is a neuroscience researcher and software engineer at University College London. He is a graduate of Ecole Normale Superieure, Paris, where he studied mathematics and computer science. He has also worked at Princeton University and College de France. While working on data science and software engineering projects, he gained experience in numerical computing, parallel computing, and high-performance data visualization. He is the author of Learning IPython for Interactive Computing and Data Visualization, Second Edition, Packt Publishing.
Summary:
Over 100 hands-on recipes to sharpen your skills in high-performance numerical computing and data science with Python In Detail IPython is at the heart of the Python scientific stack. With its widely acclaimed web-based notebook, IPython is today an ideal gateway to data analysis and numerical computing in Python. IPython Interactive Computing and Visualization Cookbook contains many ready-to-use focused recipes for high-performance scientific computing and data analysis. The first part covers programming techniques, including code quality and reproducibility; code optimization; high-performance computing through dynamic compilation, parallel computing, and graphics card programming. The second part tackles data science, statistics, machine learning, signal and image processing, dynamical systems, and pure and applied mathematics. What You Will Learn Code better by writing high-quality, readable, and well-tested programs; profiling and optimizing your code, and conducting reproducible interactive computing experiments Master all of the new features of the IPython notebook, including the interactive HTML/JavaScript widgets Analyze data with Bayesian and frequentist statistics (Pandas, PyMC, and R), and learn from data with machine learning (scikit-learn) Gain valuable insights into signals, images, and sounds with SciPy, scikit-image, and OpenCV Learn how to write blazingly fast Python programs with NumPy, PyTables, ctypes, Numba, Cython, OpenMP, GPU programming (CUDA and OpenCL), parallel IPython, MPI, and many more
Contents:
Intro
IPython Interactive Computing and Visualization Cookbook
Table of Contents
Credits
About the Author
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers, and more
Why Subscribe?
Free Access for Packt account holders
Preface
What this book is
What this book covers
Part 1 - Advanced High-Performance Interactive Computing
Part 2 - Standard Methods in Data Science and Applied Mathematics
What you need for this book
Installing Python
GitHub repositories
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Downloading the color images
Errata
Piracy
Questions
1. A Tour of Interactive Computing with IPython
Introduction
What is IPython?
A brief historical retrospective on Python as a scientific environment
What's new in IPython 2.0?
Roadmap for IPython 3.0 and 4.0
References
Introducing the IPython notebook
Getting ready
How to do it...
There's more...
See also
Getting started with exploratory data analysis in IPython
Introducing the multidimensional array in NumPy for fast array computations
How it works...
Creating an IPython extension with custom magic commands
The InteractiveShell class
Loading an extension
Mastering IPython's configuration system
Configurables
Magics
Creating a simple kernel for IPython
2. Best Practices in Interactive Computing
Introduction.
Choosing (or not) between Python 2 and Python 3
Main differences in Python 3 compared to Python 2
Python 2 or Python 3?
Supporting both Python 2 and Python 3
Using 2to3
Writing code that works in Python 2 and Python 3
Efficient interactive computing workflows with IPython
The IPython terminal
IPython and text editor
The IPython notebook
Integrated Development Environments
Learning the basics of the distributed version control system Git
How to do it…
Creating a local repository
Cloning a remote repository
How it works…
There's more…
A typical workflow with Git branching
Stashing
Ten tips for conducting reproducible interactive computing experiments
Writing high-quality Python code
Writing unit tests with nose
Test coverage
Workflows with unit testing
Unit testing and continuous integration
Debugging your code with IPython
The post-mortem mode
Step-by-step debugging
GUI debuggers
3. Mastering the Notebook
What is the notebook?
The notebook ecosystem
Architecture of the IPython notebook
Connecting multiple clients to one kernel
Security in notebooks
Teaching programming in the notebook with IPython blocks
Converting an IPython notebook to other formats with nbconvert
How to do it.
How it works...
Adding custom controls in the notebook toolbar
Customizing the CSS style in the notebook
Using interactive widgets - a piano in the notebook
Creating a custom JavaScript widget in the notebook - a spreadsheet editor for pandas
Processing webcam images in real time from the notebook
4. Profiling and Optimization
Evaluating the time taken by a statement in IPython
Profiling your code easily with cProfile and IPython
Premature optimization is the root of all evil
Profiling your code line-by-line with line_profiler
How do to it...
Tracing the step-by-step execution of a Python program
Profiling the memory usage of your code with memory_profiler
Using memory_profiler for standalone Python programs
Using the %memit magic command in IPython
Other tools
Understanding the internals of NumPy to avoid unnecessary array copying
Why are NumPy arrays efficient?
What is the difference between in-place and implicit-copy operations?
Why can't some arrays be reshaped without a copy?
What are NumPy broadcasting rules?
See also.
Using stride tricks with NumPy
Implementing an efficient rolling average algorithm with stride tricks
Making efficient array selections in NumPy
Processing huge NumPy arrays with memory mapping
Manipulating large arrays with HDF5 and PyTables
Manipulating large heterogeneous tables with HDF5 and PyTables
5. High-performance Computing
CPython and concurrent programming
Compiler-related installation instructions
Linux
Mac OS X
Windows
Python 32-bit
Python 64-bit
DLL hell
Accelerating pure Python code with Numba and just-in-time compilation
Accelerating array computations with Numexpr
Wrapping a C library in Python with ctypes
Accelerating Python code with Cython
Optimizing Cython code by writing less Python and more C
Releasing the GIL to take advantage of multicore processors with Cython and OpenMP
Writing massively parallel code for NVIDIA graphics cards (GPUs) with CUDA
How it works….
There's more…
Writing massively parallel code for heterogeneous platforms with OpenCL
Distributing Python code across multiple cores with IPython
Dependent parallel tasks
Alternative parallel computing solutions
Interacting with asynchronous parallel tasks in IPython
Parallelizing code with MPI in IPython
Trying the Julia language in the notebook
6. Advanced Visualization
Making nicer matplotlib figures with prettyplotlib
Creating beautiful statistical plots with seaborn
Creating interactive web visualizations with Bokeh
Visualizing a NetworkX graph in the IPython notebook with D3.js
Converting matplotlib figures to D3.js visualizations with mpld3
Getting started with Vispy for high-performance interactive data visualizations
Vispy for scientific visualization
7. Statistical Data Analysis
What is statistical data analysis?
A bit of vocabulary
Exploration, inference, decision, and prediction
Univariate and multivariate methods
Frequentist and Bayesian methods.
Parametric and nonparametric inference methods.
Notes:
Includes index.
"Quick answers to common questions." --Cover.
Description based on online resource; title from PDF title page (ebrary, viewed October 06, 2014).
ISBN:
9781783284825
178328482X
OCLC:
894504558

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account