У меня есть numpy массив чисел x
и некоторые пороги [A,B,C,D]
Я хочу применить 5 различных формул к каждому срезу массива, но в идеале я не хочу перебрать его (вот почему я пытаюсь использовать numpy).
Какой лучший способ сделать это? Это то, что я пытаюсь сделать, есть ли лучший способ?
cond_A = np.where(x <= A)
cond_B = np.where((x > A) & (x <= B))
cond_C = np.where((x > B) & (x <= C))
cond_D = np.where((x > C) & (x <= D))
cond_E =np.where(x > D)
x[cond_A] = function_A(x[cond_A])
...
...
x[cond_E]= function_E(x[cond_E])
РЕДАКТИРОВАТЬ: Если я пытаюсь это сделать, я получаю ошибку:
ValueError: The Истинное значение массива с более чем одним элементом неоднозначно. Используйте a.any () или a.all ()