a并且b是一維numpy數組(或python列表):我正在這樣做:>>> c = [x/y for x,y in zip(a,b)]有時b其中有零-因此會發生被零除的錯誤。如何有條件地檢查中的0值b并將對應的元素設置c為0?
3 回答

四季花海
TA貢獻1811條經驗 獲得超5個贊
似乎numpy默認情況下您要執行的操作:
>>> a = np.array([1,2,3])
>>> b = np.array([0,1,3])
>>> a / b
array([0, 2, 1])
如@Jaime所指出的,如果至少一個array類型為float類型,則除以0會得到inf,因此您需要執行以下操作:
>>> a = np.array([1,2,3], dtype='float')
>>> b = np.array([0,1,3], dtype='float')
>>> c = a / b
>>> c
array([ inf, 2., 1.])
>>> c[c == np.inf] = 0
>>> c
array([ 0., 2., 1.])
添加回答
舉報
0/150
提交
取消