Using numpy
¶
In [2]:
import itertools as it
import numpy as np
Creation of arrays¶
- array
- arange
- zeros, ones, empty
- zeros_like, ones_like, empty_like
- eye, diag
- linspace, logspace
- fromiter, fromfunction, fromstring, fromregex
- record arrays
In [26]:
%%file christmas.txt
4 Calling Birds
5 Gold Rings
6 Geese a-Laying
7 Swans a-Swimming
8 Maids a-Milking
9 Ladies Dancing
10 Lords a-Leaping
11 Pipers Piping
12 Drummers Drumming
Overwriting christmas.txt
Indexing¶
- ranges
- step size
- reverse slicing
- fancy indexing
np.ix_
np.where
In [ ]:
In [ ]:
In [ ]:
In [ ]:
Views and copies¶
=
is a view- slice is a view
- Use
copy()
to make a copy
In [ ]:
In [ ]:
In [ ]:
In [ ]:
Vectorization and ufuncs¶
- operators
- cumsum
- log, log10, log1p
- exp, exp2, expm1
- clip
- vectorize
- Using
timeit
In [ ]:
In [ ]:
In [ ]:
In [ ]:
Broadcasting¶
- Broadcasting rules
- Adding vector to matrix
- Array expansion with
np.newarray
or None
In [ ]:
In [ ]:
In [ ]:
In [ ]:
Exercise: Create the following 12 by 12 multiplicaiton table using
numpy
- fromiter
- fromfuction
- outer
- broadcasting
array([[ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12],
[ 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24],
[ 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36],
[ 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48],
[ 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60],
[ 6, 12, 18, 24, 30, 36, 42, 48, 54, 60, 66, 72],
[ 7, 14, 21, 28, 35, 42, 49, 56, 63, 70, 77, 84],
[ 8, 16, 24, 32, 40, 48, 56, 64, 72, 80, 88, 96],
[ 9, 18, 27, 36, 45, 54, 63, 72, 81, 90, 99, 108],
[ 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120],
[ 11, 22, 33, 44, 55, 66, 77, 88, 99, 110, 121, 132],
[ 12, 24, 36, 48, 60, 72, 84, 96, 108, 120, 132, 144]])
In [ ]:
In [ ]:
In [ ]:
In [ ]:
Reductions and the axis argument¶
- mean, min, max, sum, ptp, median, var, std
- axis argument
In [ ]:
In [ ]:
In [ ]:
In [ ]:
Splitting arrays¶
- split
- np.lib.pad
- hsplit, vsplit, dsplit
- squeeze after split
In [ ]:
In [ ]:
In [ ]:
In [ ]: