 Open in App
Not now

# Python | Flatten a 2d numpy array into 1d array

• Difficulty Level : Basic
• Last Updated : 03 Feb, 2023

Given a 2d numpy array, the task is to flatten a 2d numpy array into a 1d array. Below are a few methods to solve the task.

Method #1 : Using np.flatten()

## Python3

 `# Python code to demonstrate``# flattening a 2d numpy array``# into 1d array` `import` `numpy as np` `ini_array1 ``=` `np.array([[``1``, ``2``, ``3``], [``2``, ``4``, ``5``], [``1``, ``2``, ``3``]])` `# printing initial arrays``print``("initial array", ``str``(ini_array1))` `# Multiplying arrays``result ``=` `ini_array1.flatten()` `# printing result``print``("New resulting array: ", result)`

Output:

```initial array [[1 2 3]
[2 4 5]
[1 2 3]]
New resulting array:  [1 2 3 2 4 5 1 2 3]```

Time complexity: O(n), where n is the total number of elements in the 2D numpy array.
Auxiliary space: O(n), as the result array is also of size n. The flatten function returns a flattened 1D array, which is stored in the “result” variable.

Method #2: Using np.ravel()

## Python3

 `# Python code to demonstrate``# flattening a 2d numpy array``# into 1d array` `import` `numpy as np` `ini_array1 ``=` `np.array([[``1``, ``2``, ``3``], [``2``, ``4``, ``5``], [``1``, ``2``, ``3``]])` `# printing initial arrays``print``("initial array", ``str``(ini_array1))` `# Multiplying arrays``result ``=` `ini_array1.ravel()` `# printing result``print``("New resulting array: ", result)`

Output:

```initial array [[1 2 3]
[2 4 5]
[1 2 3]]
New resulting array:  [1 2 3 2 4 5 1 2 3]```

Method #3: Using np.reshape()

## Python3

 `# Python code to demonstrate``# flattening a 2d numpy array``# into 1d array` `import` `numpy as np` `ini_array1 ``=` `np.array([[``1``, ``2``, ``3``], [``2``, ``4``, ``5``], [``1``, ``2``, ``3``]])` `# printing initial arrays``print``("initial array", ``str``(ini_array1))` `# Multiplying arrays``result ``=` `ini_array1.reshape([``1``, ``9``])` `# printing result``print``("New resulting array: ", result)`

Output:

```initial array [[1 2 3]
[2 4 5]
[1 2 3]]
New resulting array:  [[1 2 3 2 4 5 1 2 3]]```

Time Complexity: O(n), where n is the total number of elements in the 2D numpy array.
Auxiliary Space: O(n), as the program creates a new 1D list with the same number of elements as the original 2D array.

My Personal Notes arrow_drop_up