我有两个无聊的数组:
import numpy as np
a=np.array([1,-2,3])
b=np.array([-2,-1,4])
字符串
我知道如何创建一个数组的最小值的每对条目:
np.minimum(a,b)
array([-2, -2, 3])
型
以及如何获得最小量值的绝对值数组。
np.minimum(abs(a),abs(b))
array([1, 1, 3])
型
但我想要的是一个最小量级值的数组,但要保留这些值的符号,换句话说,要得到
array([1,-1,3])
型
作为我的输出...我想不出一条Python式的方法在一行中做到这一点,只有诉诸于冗长的循环和如果-那么...
2条答案
按热度按时间4zcjmb1e1#
使用
np.where
,以绝对值作为条件,以原始数组作为返回元素:字符串
pgpifvop2#
使用np.where是最好的答案,但我刚刚使用Python迭代制定了一个替代解决方案:
字符串
当然,
np.where
函数会快得多。