Tuesday, April 23, 2024

Interview Problem on NumPy meshgrid() function and vstack() function - Create this array of numbers using Python code

""" 
Can you create an array like the two shown below using Python code:

[[-2. -1.]
 [-1. -1.]
 [ 0. -1.]
 [ 1. -1.]
 [ 2. -1.]
 [-2.  0.]
 [-1.  0.]
 [ 0.  0.]
 [ 1.  0.]
 [ 2.  0.]
 [-2.  1.]
 [-1.  1.]
 [ 0.  1.]
 [ 1.  1.]
 [ 2.  1.]]

OR 

May be this array:

[[-2. -1.]
 [ 0. -1.]
 [ 2. -1.]
 [-2.  0.]
 [ 0.  0.]
 [ 2.  0.]
 [-2.  1.]
 [ 0.  1.]
 [ 2.  1.]]

"""


import numpy as np

# Define one-dimensional arrays
x = np.linspace(-2, 2, 5)  # 5 values between -2 and 2
y = np.linspace(-1, 1, 3)  # 3 values between -1 and 1

# Create mesh grids
X, Y = np.meshgrid(x, y) 

# Print the shapes of the grids
print("X:", X.shape)
print("Y:", Y.shape)

# X will have the shape (5, 3) and Y will also have the shape (5, 3)
# Each element in X will be a value from the x array. X values change along the columns.
# Each element in Y will be a value from the y array. Y values change along the rows.

print(X)
print(Y)

Xgrid = np.vstack((X.flatten(), Y.flatten())).T
print(Xgrid)


# In order to get the second output, we need to change the input:

# Define one-dimensional arrays
x = np.linspace(-2, 2, 3)  # 3 values between -2 and 2
y = np.linspace(-1, 1, 3)  # 3 values between -1 and 1

# Rest of the code would remain the same.

Side Note

You may be wondering where this might be used. The answer is that it can be used in creating dummy data that is 2 Dimensional (excluding the target values) in Machine Learning projects.
Tags: Technology,Python,NumPy,Interview Preparation,

No comments:

Post a Comment