假设我有一个numpy数组
A = [[1 2 3]
[2 3 3]
[1 2 3]]
和另一个数组
B = [[3 2 3]
[1 2 3]
[4 6 3]]
和一组真值:
C = [[1 4 3]
[8 7 3]
[4 10 3]]
现在我要创建一个数组D,其元素是从A或B中删除的,条件是每个元素与数组C的最接近的值。
有没有pythonic方式来做到这一点?现在我正在使用循环
答案 0 :(得分:7)
>>> K = abs(A - C) < abs(B - C) # create array of bool
[[True, False, False],
[True, True, False],
[False, False, False]]
>>> D = where(K, A, B) # get elements of A and B respectively