How to reshape arrays and perform element-wise addition using NumPy?
NumPy: Broadcasting Exercise-18 with Solution
Given two 1D arrays a of shape (8,) and b of shape (4,), write a NumPy program to reshape them and perform element-wise addition using broadcasting to get a 2D array of shape (8, 4).
Sample Solution:
Python Code:
import numpy as np
# Create 1D array a of shape (8,)
a = np.array([1, 2, 3, 4, 5, 6, 7, 8])
# Create 1D array b of shape (4,)
b = np.array([10, 20, 30, 40])
# Reshape array a to (8, 1) to enable broadcasting
a_reshaped = a[:, np.newaxis]
# Perform element-wise addition using broadcasting
result = a_reshaped + b
print(result)
Output:
[[11 21 31 41] [12 22 32 42] [13 23 33 43] [14 24 34 44] [15 25 35 45] [16 26 36 46] [17 27 37 47] [18 28 38 48]]
Explanation:
- Import NumPy: Import the NumPy library to handle array operations.
- Create 1D array a: Define a 1D array a with shape (8,).
- Create 1D array b: Define a 1D array b with shape (4,).
- Reshape a: Reshape array a to (8, 1) to enable broadcasting.
- Element-wise Addition: Add the reshaped array a and array b using broadcasting to get a 2D array of shape (8, 4).
- Print Result: Print the resulting array.
Python-Numpy Code Editor:
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics