РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
43 of 541 menu

Функция split

Функция split разделяет массив NumPy на несколько подмассивов вдоль заданной оси. Первым параметром функция принимает исходный массив, вторым - количество частей или индексы, по которым нужно разделить. Третьим параметром можно указать ось для разделения.

Синтаксис

np.split(arr, indices_or_sections, [axis])

Пример

Давайте разделим одномерный массив из шести элементов на три равные части:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6]) res = np.split(arr, 3) for part in res: print(part)

Результат выполнения кода:

[1 2] [3 4] [5 6]

Пример

Разделим массив на части с помощью списка индексов. Индексы указывают позиции, после которых происходит разделение:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9]) res = np.split(arr, [2, 5, 7]) for part in res: print(part)

Результат выполнения кода:

[1 2] [3 4 5] [6 7] [8 9]

Пример

Разделим двумерный массив по строкам (ось 0). В результате получим три подмассива, каждый из которых содержит одну строку исходного массива:

import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) res = np.split(arr, 3, axis=0) for part in res: print(part) print('---')

Результат выполнения кода:

[[1 2 3]] --- [[4 5 6]] --- [[7 8 9]] ---

Пример

Разделим двумерный массив по столбцам (ось 1) с помощью списка индексов. Каждая часть будет содержать указанное количество столбцов:

import numpy as np arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]) res = np.split(arr, [1, 3], axis=1) for part in res: print(part) print('---')

Результат выполнения кода:

[[1] [5] [9]] --- [[2 3] [6 7] [10 11]] --- [[4] [8] [12]] ---

Пример

Если массив невозможно разделить на равные части, функция split вызовет ошибку. Для такого случая используйте функцию array_split, которая позволяет неравномерное разделение:

import numpy as np arr = np.array([1, 2, 3, 4, 5]) res = np.array_split(arr, 3) for part in res: print(part)

Результат выполнения кода:

[1 2] [3 4] [5]

Смотрите также

  • функцию array_split,
    которая разделяет массив на части с возможностью неравномерного деления
  • функцию hsplit,
    которая разделяет массив по горизонтали (по столбцам)
  • функцию vsplit,
    которая разделяет массив по вертикали (по строкам)
  • функцию dsplit,
    которая разделяет массив по третьей оси (по глубине)
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить