numpy.ma.masked_array.partition#
метод
- ma.masked_array.раздел(k-й, ось=-1, kind='introselect', порядок=None)[источник]#
Частично сортирует элементы в массиве таким образом, что значение элемента в k-й позиции находится в позиции, в которой оно было бы в отсортированном массиве. В выходном массиве все элементы, меньшие k-го элемента, расположены слева от этого элемента, а все равные или большие — справа. Порядок элементов в двух разделах по обе стороны от k-го элемента в выходном массиве не определён.
- Параметры:
- k-йint или последовательность ints
Индекс элемента для разделения. Значение k-го элемента будет в его окончательной отсортированной позиции, и все меньшие элементы будут перемещены перед ним, а все равные или большие элементы — позади него. Порядок всех элементов в разделах не определён. Если предоставлена последовательность kth, он разделит все элементы, индексированные ими, в их отсортированные позиции одновременно.
Устарело с версии 1.22.0: Передача булевых значений в качестве индекса устарела.
- осьint, необязательный
Ось, вдоль которой производится сортировка. По умолчанию -1, что означает сортировку по последней оси.
- kind{'introselect'}, опционально
Алгоритм выбора. По умолчанию 'introselect'.
- порядокstr или список str, необязательно
Когда a является массивом с определёнными полями, этот аргумент указывает, какие поля сравнивать первыми, вторыми и т.д. Одно поле может быть указано как строка, и не все поля нужно указывать, но неуказанные поля всё равно будут использоваться, в порядке, в котором они появляются в dtype, для разрешения ничьих.
Смотрите также
numpy.partitionВозвращает разделённую копию массива.
argpartitionКосвенное разделение.
sortПолная сортировка.
Примечания
См.
np.partitionдля заметок о различных алгоритмах.Примеры
>>> import numpy as np >>> a = np.array([3, 4, 2, 1]) >>> a.partition(3) >>> a array([2, 1, 3, 4]) # may vary
>>> a.partition((1, 3)) >>> a array([1, 2, 3, 4])