numpy使用技巧之?dāng)?shù)組過(guò)濾實(shí)例代碼
本文研究的主要是numpy使用技巧之?dāng)?shù)組過(guò)濾的相關(guān)內(nèi)容,具體如下。
當(dāng)使用布爾數(shù)組b作為下標(biāo)存取數(shù)組x中的元素時(shí),將收集數(shù)組x中所有在數(shù)組b中對(duì)應(yīng)下標(biāo)為T(mén)rue的元素。使用布爾數(shù)組作為下標(biāo)獲得的數(shù)組不和原始數(shù)組共享數(shù)據(jù)空間,注意這種方式只對(duì)應(yīng)于布爾數(shù)組(array),不能使用布爾列表(list)。
>>> x = np.arange(5,0,-1) >>> x array([5, 4, 3, 2, 1]) >>> x[np.array([True, False, True, False, False])] >>> # 下標(biāo)為T(mén)rue的取出來(lái),布爾數(shù)組中下標(biāo)為0,2的元素為T(mén)rue,因此獲取x中下標(biāo)為0,2的元素 array([5, 3]) >>> x[[True, False, True, False, False]]#Error,這不是我們想要的結(jié)果 >>> # 如果是布爾列表,則把True當(dāng)作1, False當(dāng)作0,按照整數(shù)序列方式獲取x中的元素 array([4, 5, 4, 5, 5]) >>> x[np.array([True, False, True, True])] >>> # 布爾數(shù)組的長(zhǎng)度不夠時(shí),不夠的部分都當(dāng)作False array([5, 3, 2]) >>> x[np.array([True, False, True, True])] = -1, -2, -3#只修改下標(biāo)為T(mén)rue的元素 >>> # 布爾數(shù)組下標(biāo)也可以用來(lái)修改元素 >>> x array([-1, 4, -2, -3, 1])
注意:布爾數(shù)組一般不是手工產(chǎn)生的,通常我們使用一條布爾表達(dá)式來(lái)得到,如:
>>> x = np.random.rand(10) # 產(chǎn)生一個(gè)長(zhǎng)度為10,元素值為0-1的隨機(jī)數(shù)的數(shù)組 >>> x array([ 0.72223939, 0.921226 , 0.7770805 , 0.2055047 , 0.17567449, 0.95799412, 0.12015178, 0.7627083 , 0.43260184, 0.91379859]) >>> x>0.5 >>> # 數(shù)組x中的每個(gè)元素和0.5進(jìn)行大小比較,得到一個(gè)布爾數(shù)組,True表示x中對(duì)應(yīng)的值大于0.5 array([ True, True, True, False, False, True, False, True, False, True], dtype=bool) >>> x[x>0.5]# x>0.5是一個(gè)布爾數(shù)組 >>> # 使用x>0.5返回的布爾數(shù)組收集x中的元素,因此得到的結(jié)果是x中所有大于0.5的元素的數(shù)組 array([ 0.72223939, 0.921226 , 0.7770805 , 0.95799412, 0.7627083 , 0.91379859])
總結(jié)
以上就是本文關(guān)于numpy使用技巧之?dāng)?shù)組過(guò)濾實(shí)例代碼的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專(zhuān)題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
相關(guān)文章
詳解appium+python 啟動(dòng)一個(gè)app步驟
這篇文章主要介紹了詳解appium+python 啟動(dòng)一個(gè)app步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-12-12linux環(huán)境部署清華大學(xué)大模型最新版 chatglm2-6b 圖文教程
這篇文章主要介紹了linux環(huán)境部署清華大學(xué)大模型最新版 chatglm2-6b ,結(jié)合實(shí)例形式詳細(xì)分析了Linux環(huán)境下chatglm2-6b部署相關(guān)操作步驟與注意事項(xiàng),需要的朋友可以參考下2023-07-07Python中將兩個(gè)或多個(gè)list合成一個(gè)list的方法小結(jié)
python中,list這種數(shù)據(jù)結(jié)構(gòu)很常用到,如果兩個(gè)或者多個(gè)list結(jié)構(gòu)相同,內(nèi)容類(lèi)型相同,我們通常會(huì)將兩個(gè)或者多個(gè)list合并成一個(gè),這樣我們?cè)傺h(huán)遍歷的時(shí)候就可以一次性處理掉了2019-05-05Python使用os模塊實(shí)現(xiàn)更高效地讀寫(xiě)文件
os是python標(biāo)準(zhǔn)庫(kù),包含幾百個(gè)函數(shù)常用路徑操作、進(jìn)程管理、環(huán)境參數(shù)等好多類(lèi)。本文將使用os模塊實(shí)現(xiàn)更高效地讀寫(xiě)文件,感興趣的可以學(xué)習(xí)一下2022-07-07Python計(jì)算機(jī)視覺(jué)SIFT尺度不變的圖像特征變換
這篇文章主要為大家介紹了Python計(jì)算機(jī)視覺(jué)SIFT尺度不變的圖像特征變換,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05Pandas庫(kù)中dataframe.corr()函數(shù)的使用
dataframe.corr()是Pandas庫(kù)中的一個(gè)函數(shù),用于計(jì)算DataFrame中各列之間的相關(guān)系數(shù),本文主要介紹了Pandas庫(kù)中dataframe.corr()函數(shù)的使用,具有一定的參考價(jià)值,感興趣的可以了解一下2024-07-07