Функция array_split
Функция array_split разделяет массив NumPy на несколько подмассивов
вдоль заданной оси. Первым параметром функция принимает исходный массив,
вторым - количество частей, на которые нужно разделить массив.
Третьим параметром можно указать ось (по умолчанию axis=0).
Главное отличие от split в том, что array_split позволяет
разделять массив на неравные части, если размер массива не кратен
количеству частей.
Синтаксис
np.array_split(arr, indices_or_sections, axis=0)
Пример
Разделим одномерный массив из 7 элементов на 3 части:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
res = np.array_split(arr, 3)
for part in res:
print(part)
Результат выполнения кода:
[1 2 3]
[4 5]
[6 7]
Массив разделён на три части: первая содержит 3 элемента, вторая и третья - по 2 элемента.
Пример
Разделим двумерный массив по строкам (ось 0):
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]])
res = np.array_split(arr, 3, axis=0)
for part in res:
print(part, end="\n\n")
Результат выполнения кода:
[[1 2 3]
[4 5 6]]
[[7 8 9]]
[[10 11 12]]
Массив разделён на три части по строкам: первая часть содержит 2 строки, вторая и третья - по 1 строке.
Пример
Разделим двумерный массив по столбцам (ось 1):
import numpy as np
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
res = np.array_split(arr, 3, axis=1)
for part in res:
print(part, end="\n\n")
Результат выполнения кода:
[[1 2]
[5 6]]
[[3]
[7]]
[[4]
[8]]
Массив разделён на три части по столбцам: первая часть содержит 2 столбца, вторая и третья - по 1 столбцу.
Смотрите также
-
функцию
split,
которая разделяет массив на равные части -
функцию
hsplit,
которая разделяет массив по горизонтали -
функцию
vsplit,
которая разделяет массив по вертикали -
функцию
concatenate,
которая объединяет массивы вдоль оси