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

Метод remove_axis

Метод remove_axis класса nditer удаляет указанную ось из итератора, уменьшая размерность обхода. Метод вызывается после создания итератора, но до начала итерации. В качестве параметра передаётся индекс оси, которую необходимо удалить. Возвращает новое количество осей итератора.

Синтаксис

nditer.remove_axis(axis)

Пример

Создадим двумерный массив и итератор. Удалим первую ось (строки) и выполним итерацию по оставшимся элементам:

import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6]]) it = np.nditer(arr, flags=['multi_index']) print("До удаления:", it.ndim) it.remove_axis(0) print("После удаления:", it.ndim) for x in it: print(x)

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

До удаления: 2 После удаления: 1 1 2 3 4 5 6

Пример

Удалим вторую ось (столбцы) трёхмерного массива и проверим изменение формы итерации:

import numpy as np arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]]) it = np.nditer(arr, flags=['multi_index']) print("Исходная размерность:", it.ndim) print("Исходная форма:", it.shape) it.remove_axis(1) print("Размерность после удаления:", it.ndim) print("Форма после удаления:", it.shape)

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

Исходная размерность: 3 Исходная форма: (2, 2, 2) Размерность после удаления: 2 Форма после удаления: (2, 2)

Пример

Используем метод remove_axis вместе с флагом external_loop для упрощения обработки данных:

import numpy as np arr = np.array([[10, 20, 30], [40, 50, 60]]) it = np.nditer(arr, flags=['external_loop'], order='C') it.remove_axis(0) for x in it: print(x)

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

[10 20 30 40 50 60]

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

  • класс nditer,
    который представляет многомерный итератор для массивов
  • метод enable_external_loop,
    который включает режим внешнего цикла для итератора
  • метод reset,
    который сбрасывает итератор в начальное состояние
  • метод iternext,
    который переводит итератор на следующий элемент
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить