reshape to 2d array numpy code example
Example 1: numpy convert 1d array to 2d
import numpy as np
# 1D array
one_dim_arr = np.array([1, 2, 3, 4, 5, 6])
# to convert to 2D array
# we can use the np.ndarray.reshape(shape) function
# here shape is given by two integers seperated by a comma
# the two integers specify m,n for the new matrix
# ensure that the matrix that you are trying to generate
# has a size that meets the number of elements in the 1D array.
# for that make sure that
# m * n = number of elements in the one dimentional array
two_dim_arr = one_dim_arr.reshape(1, 6)
#which returns a 2D array
print(two_dim_arr)
# confirmed by the array.ndim attribute
print(two_dim_arr.ndim)
# you can even specify one of the dimensions as unknown by passing -1
# numpy will infer the length using the array and remaining dimensions
two_dim_arr = one_dim_arr.reshape(1,-1)
Example 2: convert np shape (a,) to (a,1)
# numpy array/vector (n,) dimension -> (n,1) dimension conversion
a = np.arange(3) # a.shape = (3,)
b = a.reshape((3,1)) # b.shape = (3,1)
c = b.reshape((3,)) # c.shape = (3,)
c2 = b.reshape((-1,1)) # c2.shape = (3,)