在2Dnumpy數(shù)組中,使值除零的元素等于零

我有一個(gè)代碼片段:

import numpy as np
x1 = [[1,4,2,1],       
      [1,1,4,5],
      [0.5,0.3, 1,6],
      [0.8,0.2,0.7,1]]

x2 = [[7,0,2,3],       
      [8,0,4,5],
      [0.1,0, 2,6],
      [0.1,0,0.16666667,6]]

np.true_divide(x1, x2)

輸出為:

array([[0.14285714,        inf, 1.        , 0.33333333],
       [0.125     ,        inf, 1.        , 1.        ],
       [5.        ,        inf, 0.5       , 1.        ],
       [8.        ,        inf, 4.19999992, 0.16666667]])

我知道有些元素會(huì)有零除法錯(cuò)誤,可以看作是“inf”。

如何使用“try and except”將所有這些“inf”結(jié)果更改為0?還是有更好的方法將所有這些“inf”轉(zhuǎn)換為0?

? 最佳回答:

0/0可以通過(guò)將invalid='ignore'添加到numpy.errstate()并引入numpy.nan_to_num()np.nan轉(zhuǎn)換為0來(lái)處理。

with np.errstate(divide='ignore', invalid='ignore'):
    c = np.true_divide(x1,x2)
    c[c == np.inf] = 0
    c = np.nan_to_num(c)
print(c)

Output

[[0.14285714 0.         1.         0.33333333]
 [0.125      0.         1.         1.        ]
 [5.         0.         0.5        1.        ]
 [8.         0.         4.19999992 0.16666667]]

公眾號(hào):1024技術(shù)圈

?? 提供互聯(lián)網(wǎng)知識(shí)和資訊,分享IT前沿技術(shù),熱門(mén)資源,大廠面試題 ??

主站蜘蛛池模板: 精品亚洲一区二区三区在线播放| 日韩精品一区二区三区国语自制| 免费无码毛片一区二区APP| 女人和拘做受全程看视频日本综合a一区二区视频 | 日本v片免费一区二区三区| 无码人妻一区二区三区免费手机| 无码丰满熟妇一区二区| 风间由美在线亚洲一区| 亚洲人成网站18禁止一区| 又硬又粗又大一区二区三区视频| 久久精品视频一区二区三区| 亚洲一区二区三区高清在线观看| 亚洲爆乳精品无码一区二区| 精品91一区二区三区| 美女福利视频一区| 亚洲AV无码一区二区三区久久精品| 国产一区二区三区在线免费观看| 日韩制服国产精品一区| 精品午夜福利无人区乱码一区| 日韩精品无码Av一区二区| 亚洲成在人天堂一区二区| 日韩福利视频一区| 无码欧精品亚洲日韩一区| 国产伦精品一区二区三区免.费| 中文字幕日本一区| 国产精品美女一区二区三区| 国产成人精品一区二区三区无码| 一区二区三区视频| 久久影院亚洲一区| 中日韩精品无码一区二区三区| 香蕉一区二区三区观| 中文字幕AV无码一区二区三区| 激情内射亚州一区二区三区爱妻| 亚洲AV成人精品一区二区三区| 国产精华液一区二区区别大吗| 天堂va视频一区二区| 无码国产精品一区二区免费3p | 岛国精品一区免费视频在线观看| 精品女同一区二区三区免费站| 一区二区三区四区在线视频| 3d动漫精品成人一区二区三|