NUMPY EXERCISES
-Dev Pratap Solanki
import numpy as np
# 1. Create a null vector of size 10.
z = [Link](10)
print(z)
# Output: [0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
# 2. Create a null vector of size 10 but the fifth value which is 1.
z = [Link](10)
z[4] = 1
print(z)
# Output: [0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]
# 3. Create a vector with values ranging from 10 to 49.
z = [Link](10, 60)
print(z)
# Output: [10 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 36 37 38
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59]
# 4. Reverse a vector (first element becomes last).
z = [Link](50)
z = z[::-1]
print(z)
# Output: [49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0]
# 5. Create a 3x3 matrix with values ranging from 0 to 8.
z = [Link](9).reshape(3, 3)
print(z)
# Output:
# [[0 1 2]
# [3 4 5]
# [6 7 8]]
# 6. Find indices of non-zero elements from [1,2,0,0,4,0].
nz = [Link]([1, 2, 0, 0, 4, 0])
print(nz)
# Output: (array([0, 1, 4], dtype=int64),)
# 7. Create a 3x3 identity matrix.
z = [Link](3)
print(z)
# Output:
# [[1. 0. 0.]
# [0. 1. 0.]
# [0. 0. 1.]]
# 8. Create a 3x3x3 array with random values.
z = [Link]((3, 3, 3, 3))
print(z)
# Output: Random 3x3x3 array with values between 0 and 1.
# 9. Create a random vector of size 30 and find the mean value.
z = [Link](30)
m = [Link]()
print(m)
# Output: Mean value of the random vector (will vary).
# 10. Consider a (6,7,8) shape array, what is the index (x,y,z) of the 100th element.
print(np.unravel_index(100, (6, 7, 8)))
# Output: (1, 5, 4)
# 11. Given a 1D array, negate all elements which are between 3 and 8, in place.
z = [Link](11)
z[(3 < z) & (z <= 8)] *= -1
print(z)
# Output: [ 0 1 2 3 -4 -5 -6 -7 -8 -9 -10]
# 12. Create a 4x3 array of ones.
ones_array = [Link]((4, 3))
print(ones_array)
# Output:
# [[1. 1. 1.]
# [1. 1. 1.]
# [1. 1. 1.]
# [1. 1. 1.]]
# 13. Create a 1D array with values from 0 to 9.
a = [Link](10)
print(a)
# Output: [0 1 2 3 4 5 6 7 8 9]
# 14. Create a 3x3 matrix.
a = [Link]([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(a)
# Output:
# [[1 2 3]
# [4 5 6]
# [7 8 9]]
# 15. Insert a row at the second position.
a_ins = [Link](a, 1, [12, 13, 16], axis=0)
print(a_ins)
# Output:
# [[ 1 2 3]
# [12 13 16]
# [ 4 5 6]
# [ 7 8 9]]