Я пытаюсь понять функцию argpartition numpy.Я сделал пример документации как можно более простым.
import numpy as np
x = np.array([3, 4, 2, 1])
print("x: ", x)
a=np.argpartition(x, 3)
print("a: ", a)
print("x[a]:", x[a])
Это вывод ...
('x: ', array([3, 4, 2, 1]))
('a: ', array([2, 3, 0, 1]))
('x[a]:', array([2, 1, 3, 4]))
В строке a = np.argpartition (x, 3) не является ли k-й элемент последним элементом (число 1)?Если это номер 1, то при сортировке x не должен ли 1 стать первым элементом (элемент 0)?
В x [a], почему 2 - это первый элемент "перед" 1?
Какую фундаментальную вещь я упускаю?