numpy.ndarray.partition
-
ndarray.partition(kth, axis=-1, kind='introselect', order=None) -
Переупорядочивает элементы в массиве таким образом, что значение элемента в k-ой позиции будет находиться в той позиции, в которой оно находилось бы в отсортированном массиве. Все элементы, меньшие, чем элемент k-ой позиции, перемещаются перед ним, а все равные или большие - после него. Порядок элементов в двух разделах не определён.
Новое в версии 1.8.0.
Параметры: kth : int или последовательность int
Индекс элемента для разделения. Значение k-ого элемента будет находиться в своей окончательной отсортированной позиции, а все меньшие элементы будут перемещены перед ним, а все равные или большие - после него. Порядок всех элементов в разделах не определён. Если предоставлена последовательность kth, все элементы, индексированные kth, будут разделены на свои отсортированные позиции сразу.
axis : int, необязательно
Ось, по которой происходит сортировка. По умолчанию -1, что означает сортировку по последней оси.
kind : {‘introselect’}, необязательно
Алгоритм выбора. По умолчанию ‘introselect’.
order : str или список str, необязательно
Когда
aявляется массивом с определёнными полями, этот аргумент указывает, какие поля сравнивать сначала, второе и т. д. Одно поле можно указать как строку, и не все поля должны быть указаны, но не указанные поля всё равно будут использоваться в том порядке, в котором они появляются в dtype, чтобы разбить связи.См. также
numpy.partition- Возвращает разнесённую копию массива.
argpartition- Непрямое разделение.
sort- Полная сортировка.
Примечания
См.
np.partitionдля заметок по различным алгоритмам.Примеры
>>> a = np.array([3, 4, 2, 1]) >>> a.partition(a, 3) >>> a array([2, 1, 3, 4])
>>> a.partition((1, 3)) array([1, 2, 3, 4])
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.10.1/reference/generated/numpy.ndarray.partition.html