In [4]:
import numpy as np

import matplotlib.pyplot as plt
%matplotlib inline

In [7]:
points = np.arange(-5,5,0.01)

In [8]:
dx,dy = np.meshgrid(points, points)

In [9]:
dx


Out[9]:
array([[-5.  , -4.99, -4.98, ...,  4.97,  4.98,  4.99],
       [-5.  , -4.99, -4.98, ...,  4.97,  4.98,  4.99],
       [-5.  , -4.99, -4.98, ...,  4.97,  4.98,  4.99],
       ..., 
       [-5.  , -4.99, -4.98, ...,  4.97,  4.98,  4.99],
       [-5.  , -4.99, -4.98, ...,  4.97,  4.98,  4.99],
       [-5.  , -4.99, -4.98, ...,  4.97,  4.98,  4.99]])

In [10]:
dy


Out[10]:
array([[-5.  , -5.  , -5.  , ..., -5.  , -5.  , -5.  ],
       [-4.99, -4.99, -4.99, ..., -4.99, -4.99, -4.99],
       [-4.98, -4.98, -4.98, ..., -4.98, -4.98, -4.98],
       ..., 
       [ 4.97,  4.97,  4.97, ...,  4.97,  4.97,  4.97],
       [ 4.98,  4.98,  4.98, ...,  4.98,  4.98,  4.98],
       [ 4.99,  4.99,  4.99, ...,  4.99,  4.99,  4.99]])

In [11]:
z = (np.sin(dx) + np.sin(dy))

z


Out[11]:
array([[  1.91784855e+00,   1.92063718e+00,   1.92332964e+00, ...,
         -8.07710558e-03,  -5.48108704e-03,  -2.78862876e-03],
       [  1.92063718e+00,   1.92342581e+00,   1.92611827e+00, ...,
         -5.28847682e-03,  -2.69245827e-03,  -5.85087534e-14],
       [  1.92332964e+00,   1.92611827e+00,   1.92881072e+00, ...,
         -2.59601854e-03,  -5.63993297e-14,   2.69245827e-03],
       ..., 
       [ -8.07710558e-03,  -5.28847682e-03,  -2.59601854e-03, ...,
         -1.93400276e+00,  -1.93140674e+00,  -1.92871428e+00],
       [ -5.48108704e-03,  -2.69245827e-03,  -5.63993297e-14, ...,
         -1.93140674e+00,  -1.92881072e+00,  -1.92611827e+00],
       [ -2.78862876e-03,  -5.85087534e-14,   2.69245827e-03, ...,
         -1.92871428e+00,  -1.92611827e+00,  -1.92342581e+00]])

In [12]:
plt.imshow(z)


Out[12]:
<matplotlib.image.AxesImage at 0x10d406f50>

In [13]:
plt.imshow(z)
plt.colorbar()

plt.title('Plot for sin(x) + sin(y)')


Out[13]:
<matplotlib.text.Text at 0x117767450>

In [14]:
A = np.array([1,2,3,4])

B = np.array([100,200,300,400])

In [15]:
condition = np.array([True, True, False, False])

In [18]:
answer = [(A_val if cond else B_val) for A_val, B_val, cond in zip(A, B, condition)]

In [19]:
answer


Out[19]:
[1, 2, 300, 400]

In [20]:
answer2 = np.where(condition, A, B)

In [21]:
answer2


Out[21]:
array([  1,   2, 300, 400])

In [22]:
from numpy.random import randn

arr = randn(5,5) arr


In [24]:
np.where(arr < 0, 0, arr)


Out[24]:
array([[ 0.40771446,  1.30595905,  0.        ,  0.82898315,  0.        ],
       [ 0.        ,  0.        ,  0.        ,  0.18661231,  0.        ],
       [ 0.        ,  0.200937  ,  0.        ,  0.43000717,  0.65905596],
       [ 0.        ,  0.        ,  0.        ,  1.14771275,  0.        ],
       [ 0.        ,  0.0997334 ,  0.        ,  0.98441507,  0.        ]])

In [26]:
arr = np.array([[1,2,3], [4,5,6], [7,8,9]])
arr


Out[26]:
array([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])

arr.sum()


In [27]:
arr.sum()


Out[27]:
45

In [28]:
arr.sum(0)


Out[28]:
array([12, 15, 18])

In [29]:
arr.mean()


Out[29]:
5.0

In [30]:
arr.std()


Out[30]:
2.5819888974716112

In [31]:
arr.var()


Out[31]:
6.666666666666667

In [32]:
bool_arr = np.array([True, False, True])

In [33]:
bool_arr.any()


Out[33]:
True

In [34]:
bool_arr.all()


Out[34]:
False

In [35]:
arr = randn(5)

In [36]:
arr
arr.sort()
arr


Out[36]:
array([-1.51679161, -0.09423467,  0.23712698,  0.27545112,  1.12752669])

In [38]:
countries = np.array(['France', 'Germany', 'USA', 'Russia', 'USA', 'Mexico'])

In [40]:
np.unique(countries)


Out[40]:
array(['France', 'Germany', 'Mexico', 'Russia', 'USA'], 
      dtype='|S7')

In [42]:
np.in1d(['France', 'USA', 'Sweeden'], countries)


Out[42]:
array([ True,  True, False], dtype=bool)

In [ ]: