1.創建一個邊界值為1而內部都是0的數組,圖例如下:
[提示:]解此題可以先把所有值都設置為1,這是大正方形;其次,把邊界除外小正方形全部設置為0。
本題用到numpy的切片原理。多維數組同樣遵循x[start:stop:step]的原理。
import numpy as np a=np.ones((10,10)) #創建一個10行10列的、元素全為1的數組 a[1:9,1:9]=0 #選取數組中的2-8行列,將數據置為0 print(a)
2.在數組主對角線上創建一個值為1,2,3,4的5x5矩陣,圖例如下:
#創建一個對角線為1,2,3,4的數組 import numpy as np b=np.diag([1,2,3,4]) #使用diag創建對角線為(1,2,3,4),其他元素為0的矩陣 print(b)
3.數組歸一化操作
生成一個隨機的5*5矩陣,找出最大值和最小值,然后把最大值和最小值分別用1和0表示,其他值則介於在0和1中間。
#生成一個隨機的5*5矩陣,找出最大值和最小值,然后把最大值和最小值分別用1和0表示,其他值則介於在0和1中間。 import numpy as np c=np.random.rand(5,5) #創建一個5行5列的隨機數組 c[c==c.min()]=0 #將數組中的最小值置換成0 c[c==c.max()]=1 #將數組中的最大值置換為1 print(c)