You will find practice questions related to the NumPy array on this page. These exercises will solve your doubts regarding various ways of creating a NumPy array.
For your better understanding and to solve these questions quickly, it is recommended that you have a knowledge of certain NumPy functions such as zeros(), ones(), linspace(), and others. If you need to learn them visit the following tutorial:
Q1 Using NumPy function, create a NumPy array of 10 eights.
Expected Output
array([ 8., 8., 8., 8., 8., 8., 8., 8., 8., 8.])
Solution
import numpy as np arr = np.full(10, 8, dtype=np.float) print(arr)
Q2 Using NumPy function only, create an array of all even integers from 20 to 30.
Expected Output
array([20, 22, 24, 26, 28, 30])
Solution
import numpy as np arr = np.linspace(20, 30, 6, dtype=np.int) print(arr)
If you want to learn more about linspace()
function, then visit How to use NumPy linspace() in Python?
Q3 Using NumPy functions only, create a 4x4 matrix with values ranging from 0 to 15.
Expected Output
array([[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11], [12, 13, 14, 15]])
Solution
import numpy as np arr = np.arange(0, 16).reshape(4, 4) print(arr)
If you want to learn more about arange()
function, then visit How to use NumPy arange() in Python?
Q4 Generate a NumPy array from 0 to 100 (including 100) with a step size of 2. After generating the array, performs the following operations:
Solution
import numpy as np arr = np.arange(0, 101, step=2) print(arr) print('Sum of the elements: ', np.sum(arr)) squared_arr = arr*arr print('Squared array:\n', squared_arr) print('Sum of elements of squared array: ', np.sum(squared_arr)) print(squared_arr[np.where(squared_arr < 100)])
Q5 Write a NumPy program to sum of all the multiples of 3 or 5 below 100.
Solution
import numpy as np a = np.arange(3, 100, step=3) print(a) b = np.arange(5, 100, step=5) print(b) arr = np.concatenate((a, b)) print(arr) np.sum(arr)
Q6 Suppose that a
is a 2-dimensional NumPy array and that b
is a 1-dimensional NumPy array whose length is equal to the number of columns of a
. Write a statement that creates a 2-dimensional NumPy array c
that has the same shape as a and whose rows are obtained by multiplying the corresponding row of a
with b
.
Solution
So, if a
is the 3x2 NumPy array [[1, 2], [3, 4], [5,6]]
and b
is the NumPy array [2, 4]
, then c
will be the 3x2 2-dimensional NumPy array [[2, 8], [6, 16], [10, 24]]
.
import numpy as np a = np.array([[1, 2], [3, 4], [5, 6]]) b = np.array([2, 4]) c = a*b
When you multiply a and b, broadcasting takes place, and the resultant array obtained is
[[ 2 8] [ 6 16] [10 24]]
Q7 Assume that a
is a 2-dimensional NumPy array of shape (4,2) and that b
is a 2-dimensional NumPy of shape (2,3). Write a statement that creates a 2-dimensional NumPy array c
of shape (4,3) that is equal to the product of a
and b
, considered as matrices.
Solution
So, if a
is a 4x2 NumPy array [[1,2],[3,4],[5,6],[7,8]]
and b
is a 2x3 NumPy array [[0,1,2],[3,4,5]]
, then c
will be the 4x3 NumPy array [[6,9,12],[12,19,26],[18,29,40],[24,39,54]]
.
import numpy as np a = np.array([[1,2],[3,4],[5,6],[7,8]]) b = np.array([[0,1,2],[3,4,5]]) c = np.dot(a, b)
When you multiply a and b, matrix multiplication takes place, and the resultant array obtained is
[[ 6 9 12] [12 19 26] [18 29 40] [24 39 54]]
Q8 Assume that a and b are 2-dimensional NumPy arrays of the same shape. Write a statement that creates a 2-dimensional NumPy array c whose rows consist of the rows of a, followed by the rows of b. So c is the concatenation of a and b.
Solution
So, if a
is the 3x2 NumPy array [[1, 2], [3, 4], [5, 6]]
and b
is the 3x2 NumPy array [[10, 9], [8, 7], [6, 5]]
, then on concatenation c
will be the 6x2 2-dimensional NumPy array [[1, 2], [3, 4], [5,6], [10, 9], [8, 7], [6, 5]]
.
import numpy as np a = np.array([[1, 2], [3, 4], [5, 6]]) b = np.array([[10, 9], [8, 7], [6, 5]]) c = np.concatenate((a, b)) print(c)
[[ 1 2] [ 3 4] [ 5 6] [10 9] [ 8 7] [ 6 5]]