日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python运算学习之Numpy ------ 数组的切片索引与循环遍历、条件和布尔数组、形状变化...

發布時間:2023/12/20 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python运算学习之Numpy ------ 数组的切片索引与循环遍历、条件和布尔数组、形状变化... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

數組的切片索引:

  數組的切片索引和列表非常類似,下面用代碼簡單說明

1 a = np.random.rand(16).reshape(4, 4) 2 print("數組a:\n", a) 3 print(a[-1][1:4]) 4 Out[1]: 5 數組a: 6 [[0.04175379 0.43013992 0.5398909 0.40638248] 7 [0.3305902 0.11958799 0.48680358 0.30755734] 8 [0.00893887 0.3848716 0.21018253 0.88170218] 9 [0.80198391 0.4922656 0.67535542 0.64647139]] 10 [0.4922656 0.67535542 0.64647139]

  由于和列表類似,且要符號多維數組的特征,所以這里不過多闡述。有需要參考列表的相關知識。

?

數組的循環遍歷:

1 a = np.random.rand(9).reshape(3, 3) 2 print("數組a:\n", a) 3 for row in a: 4 print(row) # 一行一行的輸出 5 for item in a.flat: 6 print(item) 7 # 通用的循環函數 8 for_test = np.apply_along_axis(np.mean, axis=0, arr=a) # apply_along_axis(func1d, axis, arr, *args, **kwargs) 9 print("np.apply_along_axis的調試:\n", for_test) # axis=0為按列,axis=1為按行 10 Out[2]: 11 數組a: 12 [[0.97420758 0.20766438 0.52942127] 13 [0.82673775 0.44288163 0.41729451] 14 [0.1373707 0.68103565 0.92256133]] 15 [0.97420758 0.20766438 0.52942127] 16 [0.82673775 0.44288163 0.41729451] 17 [0.1373707 0.68103565 0.92256133] 18 0.9742075804081937 19 0.20766438289931244 20 0.5294212665874829 21 0.8267377457345865 22 0.44288163199889663 23 0.4172945079908593 24 0.13737070280419617 25 0.6810356459375222 26 0.922561331228303 27 np.apply_along_axis的調試: 28 [0.64610534 0.44386055 0.62309237]

  np.apply_along_axis()方法在我們對矩陣按行按列操作的時候最好用它。注意,第一個參數是方法,方法可以是自己對矩陣每個元素操作的函數方法。

條件和布爾數組:

? 1 a = np.random.rand(9).reshape(3, 3) 2 print(a < 0.5) # 輸出布爾數組 3 print(a[a < 0.5]) # 輸出true對應的元素 4 Out[3]: 5 [[ True False True] 6 [False True False] 7 [False True False]] 8 [0.19353844 0.03944841 0.38137674 0.3069755 ]

數組 形狀變化:

1 a = np.random.rand(9).reshape(3, 3) 2 a = a.ravel() # 此時的a是一個新數組 3 print(a) # 將數組平鋪成一維數組 4 a.shape = (3, 3) # 你也可以用reshape 5 print(a) 6 Out[4]: 7 [0.83017305 0.11660585 0.83060752 0.221212 0.35489551 0.74925696 8 0.61087204 0.85969402 0.90966368] 9 [[0.83017305 0.11660585 0.83060752] 10 [0.221212 0.35489551 0.74925696] 11 [0.61087204 0.85969402 0.90966368]]

  注意用A.T表示轉置,或者用A.transpose()。

?

轉載于:https://www.cnblogs.com/dan-baishucaizi/p/9388007.html

總結

以上是生活随笔為你收集整理的python运算学习之Numpy ------ 数组的切片索引与循环遍历、条件和布尔数组、形状变化...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。