У меня есть python код, который реализует нечто похожее на следующее:
import numpy as np
x = np.array([1,1,0,2,1,4])
ind = np.array([0,3,5])
def foo(x, ind):
x1 = x[ind]
x2 = np.delete(x, ind)
return x1, x2
foo(x, ind)
Вектор x
передается пользователем в функцию, а внутри функции x
делится на две части. векторы, основанные на некоторых заранее определенных индексах в ind
. Затем, некоторая работа позже в функции выполняется над векторами x1
и x2
(условно, если они существуют)
Концептуально есть 3 возможных результата, и в настоящее время я могу заставить работать только два из них на основе как я написал этот код. Результат 1) Все значения присвоены x1
, а x2
ничего не назначено. Это делается, когда, например, значение для ind = range(6)
с использованием приведенного выше примера кода. Результат 2) некоторые значения присваиваются x1
, а остальные остальные присваиваются x2
. Этот результат является кодом в приведенном выше примере.
Однако, что я не могу понять, так это результат 3) все значения присвоены x2
и ничего не присвоено x1
. В контексте того, как я написал этот код, возможно ли присвоить ind
какое-то значение, чтобы все в векторе x
было присвоено x2
, а ничего x1
?
Спасибо за вашу поддержку.