三 Numpy基礎 陣列元素查詢 修改

2022-08-12 07:51:14 字數 2333 閱讀 9307

import numpy as np

a = np.arange(16).reshape(2,2,4)

print("原陣列:\n",a)

print("單值索引值:\n",a[1][1][2])

>>>

原陣列:

[[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 9 10 11]

[12 13 14 15]]]

單值索引值:

14

import numpy as np

a=np.arange(25).reshape(5,5)#定義乙個5*5的二維陣列

print("原陣列:\n",a)

print("花式索引多值(外層取行值):\n",a[[3, 3, 1, 4]])#注意這裡一定傳入的是陣列格式

print("花式索引多值(二次取值,先行後列):\n",a[[0,2,2,4],[0,2,4,4]])#注意這裡一定傳入的是陣列格式

>>>

原陣列:

[[ 0 1 2 3 4]

[ 5 6 7 8 9]

[10 11 12 13 14]

[15 16 17 18 19]

[20 21 22 23 24]]

花式索引多值(外層取行值):

[[15 16 17 18 19]

[15 16 17 18 19]

[ 5 6 7 8 9]

[20 21 22 23 24]]

花式索引多值(外層取行值):

[ 0 12 14 24]

import numpy as np

a=np.random.random((4,4))#生成4×4的二維陣列

b=a>0.5#生成以a>0.5為篩選條件的布林陣列

print(b)

print(a[b])#根據布林陣列將原值取出,變成一維陣列

>>>

[[ true true false false]

[ true true true false]

[ true true true true]

[ true false true false]]

[0.72159895 0.85017348 0.88332226 0.7494597 0.8514071 0.91133411 0.89253366 0.80979503 0.61827433 0.94660476 0.67418788]

import numpy as np

a=np.arange(24).reshape(4,6)#生成4×4的二維陣列

b=a[[1,3],[3,5]]#花式索引

c=a[np.ix_([1,3],[3,5])]#索引器

d=a[[1,3]][:,[3,5]]

print("原陣列:\n",a)

print("花式索引:\n",b)

print("索引器索引:\n",c)

print("c等值於d:\n",d)

>>>

原陣列:

[[ 0 1 2 3 4 5]

[ 6 7 8 9 10 11]

[12 13 14 15 16 17]

[18 19 20 21 22 23]]

花式索引:

[ 9 23]

索引器索引:

[[ 9 11]

[21 23]]

c等值於d:

[[ 9 11]

[21 23]]

import numpy as np

a = np.arange(16).reshape(2,2,4)

print("原陣列:\n",a)

print("取乙個值:\n",a[1][1][2])

print("切片範圍取值:\n",a[1][1][2:4])

print("更大範圍的切片遍歷::\n",a[0][:][0:4])

>>>

原陣列:

[[[ 0 1 2 3]

[ 4 5 6 7]]

[[ 8 9 10 11]

[12 13 14 15]]]

取乙個值:

14切片範圍取值:

[14 15]  

更大範圍的切片遍歷:

numpy建立三維空陣列 NumPy高階修煉 基礎

建立並檢視資料 首先匯入並檢視numpy版本,我的版本是1.17.2,由於版本不同可能有些 寫法不一樣 接著我們來建立乙個陣列 當然我們可以將列表巢狀在列表中建立乙個二維陣列 接下來我們檢視這兩個陣列的維數 ok,和我們預想的一樣,接著我們檢視資料的shape屬性 這個shape不好翻譯,有說是矩陣...

Numpy訪問陣列元素

import numpy as np n np.array 1,2,3 4,5,6 7,8,9 array 1,2,3 4,5,6 7,8,9 第一行元素 n 0 array 1,2,3 第一行第三列元素 n 0,2 3 第一行和第二行的元素 n 0,1 array 1,2,3 4,5,6 第一行第...

NumPy基礎 結構化陣列 三

作為乙個可選的便利,numpy提供了ndarray子類,該子類允許按屬性而不是僅按索引訪問結構化陣列的字段。記錄陣列使用特殊的資料型別,該資料型別允許按屬性訪問從陣列獲得的結構化標量上的字段。numpy.rec模組提供了從各種物件建立recarrays的函式。建立記錄陣列最簡答的方法是使用numpy...