Thanks to visit codestin.com
Credit goes to www.tutorialspoint.com

Numpy hsplit() Function



The Numpy hsplit() Function is used to split an array into multiple sub-arrays along its horizontal axis i.e. axis 1.

This function takes two main arguments one is the input array and the number or array of indices where the splits should occur. It returns a list of sub-arrays that are created by splitting the original array.

The input array must be at least 2-dimensional and the number of splits should align with the array's shape along the specified axis. This function is useful for dividing data into manageable chunks for processing or analysis.

Syntax

The syntax for the Numpy hsplit() function is as follows −

numpy.hsplit(ary, indices_or_sections)

Parameters

Following are the parameters of the Numpy hsplit() Function −

  • ary: The input array to be split.
  • indices_or_sections(int or 1-D array): This is either an integer indicating the number of equal division sections to split the array into along the second axis i.e. axis=1 or a list of indices where the array is split.

Return Value

This function returns a list of sub-arrays resulting from the split.

Example 1

Following is the example of Numpy hsplit() function which splits the array into 2 sub-arrays along the columns −

import numpy as np

arr = np.arange(12).reshape(3, 4)
print("Original Array:")
print(arr)

split_arrays = np.hsplit(arr, 2)
print("\nSplit Arrays:")
for a in split_arrays:
    print(a)

Output

Original Array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

Split Arrays:
[[ 0  1]
 [ 4  5]
 [ 8  9]]
[[ 2  3]
 [ 6  7]
 [10 11]]

Example 2

Here in this example we show how numpy hsplit() function handles indices that exceed array dimensions by creating empty arrays −

import numpy as np

arr = np.arange(10).reshape(2, 5)
print("Original Array:")
print(arr)

split_arrays = np.hsplit(arr, [2, 6])  # Using indices exceeding array size
print("\nSplit Arrays:")
for a in split_arrays:
    print(a)

After execution of above code, we get the following result

Original Array:
[[0 1 2 3 4]
 [5 6 7 8 9]]

Split Arrays:
[[0 1]
 [5 6]]
[[2 3 4]
 [7 8 9]]
[]

Example 3

In this example hsplit() function divides the original array into two equal-width sections horizontally. Each section is then printed to show the result of the horizontal split −

import numpy as np 

# Create a 4x4 array with values from 0 to 15
a = np.arange(16).reshape(4, 4)

print('First array:')
print(a)
print('\n')

# Split the array horizontally into 2 equal parts
b = np.hsplit(a, 2)

print('Horizontal splitting:')
for i, section in enumerate(b):
    print('Section {}:'.format(i + 1))
    print(section)
    print('\n')

Output

First array:
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]
 [12 13 14 15]]


Horizontal splitting:
Section 1:
[[ 0  1]
 [ 4  5]
 [ 8  9]
 [12 13]]


Section 2:
[[ 2  3]
 [ 6  7]
 [10 11]
 [14 15]]
numpy_array_manipulation.htm
Advertisements