说我有两个清单:
arrayA = np.array([3,4,1,2,5,6,8,6,3])
arrayB = np.array([4,2,5,6,1,3,6,5,3])
基本上代表2D中的一个点。
我想获得一个看起来像这样的标签列表:
listLael = [type1,type2,type1,type2,...]
与arrayA和arrayB以及
的长度相同type1 if arrayA value >= 5 and arrayB value >= 5
type2 if eith arrayA or arrayB value < 5
我知道我可以通过这两个数组获得它但是有没有快速方便的方法用numpy数组做这个?
答案 0 :(得分:2)
使用numpy.where
:
>>> np.where((arrayA >= 5) & (arrayB >= 5), 'type1', 'type2')
array(['type2', 'type2', 'type2', 'type2', 'type2', 'type2', 'type1',
'type1', 'type2'],
dtype='|S5')