一、初学与入门
1、初学者10题
1-在python环境中导入numpy包,并命名为np1
import numpy as np
2-查看numpy版本和配置信息1
np.__version__
3-创建零向量,zeros函数1
2
3a1 = np.zeros((2,3))
## array([[ 0., 0., 0.],
## [ 0., 0., 0.]])
4-将上面的零向量的第二行第三列元素置为1。注意python中行列都是从0开始。1
2
3a1[1,2] = 1
## array([[ 0., 0., 0.],
## [ 0., 0., 1.]])
5-arange函数,创建一个在给定范围的向量1
a2 = np.arange(1,101) # 1-100范围不包含101
6-reshape函数,将array变形为矩阵1
2
3
4a3 = np.arange(9).reshape(3,3)
## array([[0, 1, 2],
## [3, 4, 5],
## [6, 7, 8]])
7-nonzero函数,寻找非0元素的下标1
a4 = np.nonzero([1,2,3,0,0,4,0]) # (array([0, 1, 2, 5], dtype=int64),)
8-eye函数,生成单位向量1
2
3
4a5 = np.eye(3)
## array([[ 1., 0., 0.],
## [ 0., 1., 0.],
## [ 0., 0., 1.]])
9-diag函数,diagonal对角线1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18a6 = np.diag([1,2,3,4],k=0) # k=0,以[1,2,3,4]为对角线
## array([[1, 0, 0, 0],
## [0, 2, 0, 0],
## [0, 0, 3, 0],
## [0, 0, 0, 4]])
a7 = np.diag([1,2,3,4],k=1) # k=1,以[1,2,3,4]为对角线
## array([[0, 1, 0, 0, 0],
## [0, 0, 2, 0, 0],
## [0, 0, 0, 3, 0],
## [0, 0, 0, 0, 4],
## [0, 0, 0, 0, 0]])
a8 = np.diag([1,2,3,4],k=-1) # k=-1,以[1,2,3,4]为对角线
## array([[0, 0, 0, 0, 0],
## [1, 0, 0, 0, 0],
## [0, 2, 0, 0, 0],
## [0, 0, 3, 0, 0],
## [0, 0, 0, 4, 0]])
10-random模块的random函数,生成随机数1
2
3
4a9 = np.random.random((3,3))
## array([[ 0.37607512, 0.62883501, 0.65996391],
## [ 0.78327199, 0.65893716, 0.70154238],
## [ 0.0489404 , 0.53343568, 0.59334416]])
2、入门级10题
1-创建一个8*8的“棋盘”矩阵
r1 = np.zeros((8,8),dtype=int)
r1[1::2,::2] = 1 #1,3,5,7行 2,4,6列的元素设置为1
r1[::2,1::2] = 1
2-min()和max()函数
import numpy as np
a2 = np.random.random((10,10))
a2max,a2min = a2.max(),a2.min()
更新中….