import numpy as np
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
print(x[2])
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
print(x[2])
print(x[2][1])
print(x[2, 1])
3
[21 22 23 24 25]
22
22
import numpy as np
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
print(x[0:2])
print(x[1:5:2])
print(x[2:])
print(x[:2])
print(x[-2:])
print(x[:-2])
print(x[:])
print(x[::-1])
[1 2]
[2 4]
[3 4 5 6 7 8]
[1 2]
[7 8]
[1 2 3 4 5 6]
[1 2 3 4 5 6 7 8]
[8 7 6 5 4 3 2 1]
import numpy as np
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
print(x[0:2])
print(x[1:5:2])
print(x[2:])
print(x[:2])
print(x[-2:])
print(x[:-2])
print(x[:])
print(x[2, :])
print(x[:, 2])
print(x[0, 1:4])
print(x[1:4, 0])
print(x[1:3, 2:4])
print(x[:, :])
print(x[::2, ::2])
print(x[::-1, :])
print(x[:, ::-1])
[[11 12 13 14 15]
[16 17 18 19 20]]
[[16 17 18 19 20]
[26 27 28 29 30]]
[[21 22 23 24 25]
[26 27 28 29 30]
[31 32 33 34 35]]
[[11 12 13 14 15]
[16 17 18 19 20]]
[[26 27 28 29 30]
[31 32 33 34 35]]
[[11 12 13 14 15]
[16 17 18 19 20]
[21 22 23 24 25]]
[[11 12 13 14 15]
[16 17 18 19 20]
[21 22 23 24 25]
[26 27 28 29 30]
[31 32 33 34 35]]
[21 22 23 24 25]
[13 18 23 28 33]
[12 13 14]
[16 21 26]
[[18 19]
[23 24]]
[[11 12 13 14 15]
[16 17 18 19 20]
[21 22 23 24 25]
[26 27 28 29 30]
[31 32 33 34 35]]
[[11 13 15]
[21 23 25]
[31 33 35]]
[[31 32 33 34 35]
[26 27 28 29 30]
[21 22 23 24 25]
[16 17 18 19 20]
[11 12 13 14 15]]
[[15 14 13 12 11]
[20 19 18 17 16]
[25 24 23 22 21]
[30 29 28 27 26]
[35 34 33 32 31]]
import numpy as np
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
print(x)
x[0::2, 1::3] = 0
print(x)
[[11 12 13 14 15]
[16 17 18 19 20]
[21 22 23 24 25]
[26 27 28 29 30]
[31 32 33 34 35]]
[[11 0 13 14 0]
[16 17 18 19 20]
[21 0 23 24 0]
[26 27 28 29 30]
[31 0 33 34 0]]
x = np.random.randint(1, 100, [2, 2, 3])
print(x)
print(x[1, ...])
print(x[..., 2])
[[[82 24 7]
[31 27 97]]
[[64 18 33]
[93 90 61]]]
[[64 18 33]
[93 90 61]]
[[ 7 97]
[33 61]]
import numpy as np
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
r = [0, 1, 2]
print(x[r])
r = [0, 1, -1]
print(x[r])
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
r = [0, 1, 2]
print(x[r])
r = [0, 1, -1]
print(x[r])
r = [0, 1, 2]
c = [2, 3, 4]
y = x[r, c]
print(y)
[1 2 3]
[1 2 8]
[[11 12 13 14 15]
[16 17 18 19 20]
[21 22 23 24 25]]
[[11 12 13 14 15]
[16 17 18 19 20]
[31 32 33 34 35]]
[13 19 25]
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
r = np.array([[0, 1], [3, 4]])
print(x[r])
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
r = np.array([[0, 1], [3, 4]])
print(x[r])
r = np.array([[0, 0], [4, 4]])
c = np.array([[0, 4], [0, 4]])
y = x[r, c]
print(y)
[[1 2]
[4 5]]
[[[11 12 13 14 15]
[16 17 18 19 20]]
[[26 27 28 29 30]
[31 32 33 34 35]]]
[[11 15]
[31 35]]
import numpy as np
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
y = x[0:3, [1, 2, 2]]
print(y)
[[12 13 13]
[17 18 18]
[22 23 23]]
import numpy as np
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
r = [0, 1, 2]
print(np.take(x, r))
r = [0, 1, -1]
print(np.take(x, r))
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
r = [0, 1, 2]
print(np.take(x, r, axis=0))
r = [0, 1, -1]
print(np.take(x, r, axis=0))
r = [0, 1, 2]
c = [2, 3, 4]
y = np.take(x, [r, c])
print(y)
[1 2 3]
[1 2 8]
[[11 12 13 14 15]
[16 17 18 19 20]
[21 22 23 24 25]]
[[11 12 13 14 15]
[16 17 18 19 20]
[31 32 33 34 35]]
[[11 12 13]
[13 14 15]]
import numpy as np
x = np.array([1, 2, 3, 4, 5, 6, 7, 8])
y = x > 5
print(y)
print(x[x > 5])
x = np.array([np.nan, 1, 2, np.nan, 3, 4, 5])
y = np.logical_not(np.isnan(x))
print(y)
print(x[y])
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
y = x > 25
print(y)
print(x[x > 25])
[False False False False False True True True]
[6 7 8]
[False True True False True True True]
[1. 2. 3. 4. 5.]
[[False False False False False]
[False False False False False]
[False False False False False]
[ True True True True True]
[ True True True True True]]
[26 27 28 29 30 31 32 33 34 35]
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(0, 2 * np.pi, 50)
y = np.sin(x)
print(len(x))
plt.plot(x, y)
mask = y >= 0
print(len(x[mask]))
print(mask)
'''
[ True True True True True True True True True True True True
True True True True True True True True True True True True
True False False False False False False False False False False False
False False False False False False False False False False False False
False False]
'''
plt.plot(x[mask], y[mask], 'bo')
mask = np.logical_and(y >= 0, x <= np.pi / 2)
print(mask)
'''
[ True True True True True True True True True True True True
True False False False False False False False False False False False
False False False False False False False False False False False False
False False False False False False False False False False False False
False False]
'''
plt.plot(x[mask], y[mask], 'go')
plt.show()
50
25
[ True True True True True True True True True True True True
True True True True True True True True True True True True
True False False False False False False False False False False False
False False False False False False False False False False False False
False False]
[ True True True True True True True True True True True True
True False False False False False False False False False False False
False False False False False False False False False False False False
False False False False False False False False False False False False
False False]

import numpy as np
x = np.array([[11, 12, 13, 14, 15],
[16, 17, 18, 19, 20],
[21, 22, 23, 24, 25],
[26, 27, 28, 29, 30],
[31, 32, 33, 34, 35]])
y = np.apply_along_axis(np.sum, 0, x)
print(y)
y = np.apply_along_axis(np.sum, 1, x)
print(y)
y = np.apply_along_axis(np.mean, 0, x)
print(y)
y = np.apply_along_axis(np.mean, 1, x)
print(y)
def my_func(x):
return (x[0] + x[-1]) * 0.5
y = np.apply_along_axis(my_func, 0, x)
print(y)
y = np.apply_along_axis(my_func, 1, x)
print(y)
[105 110 115 120 125]
[ 65 90 115 140 165]
[21. 22. 23. 24. 25.]
[13. 18. 23. 28. 33.]
[21. 22. 23. 24. 25.]
[13. 18. 23. 28. 33.]
11+12+13+14+15
65
import numpy as np
arr = np.arange(9).reshape(3, 3)
print(arr)
x = arr[:, [2, 1, 0]]
print(x)
[[0 1 2]
[3 4 5]
[6 7 8]]
[[2 1 0]
[5 4 3]
[8 7 6]]
y = arr[[1, 0, 2], :]
print(y)
[[3 4 5]
[0 1 2]
[6 7 8]]
z = arr[::-1, :]
print(z)
[[6 7 8]
[3 4 5]
[0 1 2]]
w = arr[:, ::-1]