91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

numpy?array如何找出符合條件的數并賦值

發布時間:2022-06-01 09:24:46 來源:億速云 閱讀:204 作者:iii 欄目:開發技術

今天小編給大家分享一下numpy array如何找出符合條件的數并賦值的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

在python中利用numpy array進行數據處理,經常需要找出符合某些要求的數據位置,有時候還需要對這些位置重新賦值。這里總結了幾種找出符合條件數據位置的方法。

這里以一個8*8的隨機數組舉例,來找出大于零的數。

import numpy as np
a = random.randint(-10,10,size=(8,8))
>>>
array([[  5,   5,  -7,   7,  -8,  -7,   0,  -8],
       [ -4,   9,   8,  -3,   6,  -4,  -7,  -5],
       [  7,   0,   6,   6,  -4,  -2,  -8,   2],
       [  6,  -5,   8,   4,   7,  -8,  -4,  -4],
       [  0,   1,  -1,  -8,  -1,   9,   4,   1],
       [  4,  -8,  -1,  -8,  -2,  -6,  -1,   9],
       [  7,   7,   9,  -9,   4,   8,   3,   1],
       [ -8,   4,  -2,   4,  -1,  -4, -10,   0]])

1.直接利用條件索引

location= a[a>0]

print(location)
>>> array([5, 5, 7, 9, 8, 6, 7, 6, 6, 2, 6, 8, 4, 7, 1, 9, 4, 1, 4, 9, 7, 7, 9,
       4, 8, 3, 1, 4, 4])
# 直接輸出了大于0的數字
#--------------------------------------------------------------#

# 我們可以用下面的方法將小于0的數字都設置為零,留下大于零的數字
b = a.copy()
b[b<=0]=0

print(b)
>>>
[[5 5 0 7 0 0 0 0]
 [0 9 8 0 6 0 0 0]
 [7 0 6 6 0 0 0 2]
 [6 0 8 4 7 0 0 0]
 [0 1 0 0 0 9 4 1]
 [4 0 0 0 0 0 0 9]
 [7 7 9 0 4 8 3 1]
 [0 4 0 4 0 0 0 0]]
 # 這就將所有大于零的保留了下來

#--------------------------------------------------------------#

#還可以此類推,將大于零的位置都設置成1,可得到大于一的位置
b = a.copy()
b[b>0] = 1
b[b<=0] = 0
print(b)
>>>
[[1 1 0 1 0 0 0 0]
 [0 1 1 0 1 0 0 0]
 [1 0 1 1 0 0 0 1]
 [1 0 1 1 1 0 0 0]
 [0 1 0 0 0 1 1 1]
 [1 0 0 0 0 0 0 1]
 [1 1 1 0 1 1 1 1]
 [0 1 0 1 0 0 0 0]]

2.利用numpy.where()

# results = np.where(condition, [x, y])
# 當條件為真時,對應位置返回x中的值,條件不成立則返回y中的值
c = np.where(a>0,a,0)  #滿足大于0的值保留,不滿足的設為0
print(c)
>>>
[[5 5 0 7 0 0 0 0]
 [0 9 8 0 6 0 0 0]
 [7 0 6 6 0 0 0 2]
 [6 0 8 4 7 0 0 0]
 [0 1 0 0 0 9 4 1]
 [4 0 0 0 0 0 0 9]
 [7 7 9 0 4 8 3 1]
 [0 4 0 4 0 0 0 0]]

# 大于零為1小于零為0
c = np.where(a>0,1,0)  #滿足大于0的值保留,不滿足的設為0
print(c)
[[1 1 0 1 0 0 0 0]
 [0 1 1 0 1 0 0 0]
 [1 0 1 1 0 0 0 1]
 [1 0 1 1 1 0 0 0]
 [0 1 0 0 0 1 1 1]
 [1 0 0 0 0 0 0 1]
 [1 1 1 0 1 1 1 1]
 [0 1 0 1 0 0 0 0]]

3.直接邏輯運算

a > 0   # 得到判斷矩陣
array([[ True,  True, False,  True, False, False, False, False],
       [False,  True,  True, False,  True, False, False, False],
       [ True, False,  True,  True, False, False, False,  True],
       [ True, False,  True,  True,  True, False, False, False],
       [False,  True, False, False, False,  True,  True,  True],
       [ True, False, False, False, False, False, False,  True],
       [ True,  True,  True, False,  True,  True,  True,  True],
       [False,  True, False,  True, False, False, False, False]], dtype=bool)

以上就是“numpy array如何找出符合條件的數并賦值”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

建水县| 巧家县| 周宁县| 黑山县| 镇康县| 屏边| 疏勒县| 缙云县| 兰溪市| 虎林市| 红安县| 富锦市| 延川县| 高唐县| 武强县| 汶川县| 繁昌县| 榆中县| 新龙县| 家居| 江口县| 深泽县| 正安县| 白城市| 聂荣县| 阿拉善盟| 广饶县| 昂仁县| 波密县| 平利县| 广宗县| 富锦市| 龙海市| 利津县| 成武县| 新化县| 沈丘县| 胶南市| 枞阳县| 民乐县| 武冈市|