An open API service indexing awesome lists of open source software.

https://github.com/leriomaggio/numpy-euroscipy

Introduction to NumPy - Tutorial @ EuroSciPy
https://github.com/leriomaggio/numpy-euroscipy

Last synced: 2 months ago
JSON representation

Introduction to NumPy - Tutorial @ EuroSciPy

Awesome Lists containing this project

README

          

# Never get in battle of bits without ammunitions

[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/leriomaggio/numpy-euroscipy/master)

**Title Credits**: Gentle reference to the homonymous [talk](https://pyvideo.org/europython-2013/never-get-in-a-battle-of-bits-without-ammunition.html) presented at
**EuroPython 2013** in Florence by my friend **riko** (_a.k.a._ Enrico Franchi ).

## Abstract

The `numpy` package takes a central role in Python scientific ecosystem.
This is mainly because `numpy` code has been designed with
high performance in mind.

This tutorial will provide materials for the most essential concepts
to become confident with `numpy` and `ndarray` in (a matter of) `90 mins`.

# Outline

**Part I** Numpy Basics

- Introduction to NumPy Arrays
- numpy internals schematics
- Reshaping and Resizing
- Numerical Data Types
- Record Array


**Part II** Indexing and Slicing

- Indexing numpy arrays
- fancy indexing
- array masking
- Slicing & Stacking
- Vectorization & Broadcasting

**Part III** "Advanced NumPy"

- Serialisation & I/O
- `.mat` files
- Array and Matrix
- Matlab compatibility
- Memmap
- Bits of Data Science with NumPy
- NumPy beyond `numpy`

### Python version

The minimum recommended version of Python to use for this tutorial is **Python 3.5**, although
Python 2.7 should be fine, as well as previous versions of Python 3.

Py3.5+ is recommended due to a reference to the `@` operator in the linear algebra notebook.

## License and Sharing Material

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.