一,numpy创建一维数组
1.1.np.array()
# 创建一维数组
a=np.array([1,2,3,4,5])
print(a)
1.2.np.arange() # 创建等差数组
b=np.arange(0,6,2) print(b)
1.3.np.linspace() #生成10个数,范围为[1,10],满足等差数列
y,c=np.linspace(1,2,3,endpoint=True,retstep=True)#start, stop, num=50, endpoint=True, retstep=False, dtype=None,axis=0 print(y,c)
1.4.numpy.logspace()
#以base为2的指数为底,生成10个数,范围为[1,10],满足等比数列
d=np.logspace(1,10,10,base=2) print(d)
二,numpy创建二维数组
2.1.numpy.array(object, dtype=None, copy=True, order='K', subok=False, ndmin=0)
# 创建一个数组,将输入对象转换为数组。
# 如果输入对象是列表,元组或数组,则创建一个数组,并将输入对象中的元素复制到数组中。
arr = np.array([[1, 2, 3], [4, 5, 6]]) print(arr) print(arr.shape)
2.2.numpy.identity(n, dtype=None)
#返回一个n x n的单位矩阵。单位矩阵是指对角线元素为1,其他元素为0的矩阵。
#如果n是正整数,则返回一个n x n的单位矩阵。如果n是负整数,则返回一个n x n的对角线元素为1,其他元素为0的矩阵。
b=np.identity(3) print(b)
2.3.numpy.eye(N, M=None, k=0, dtype=<class 'numpy.float64'>)
#返回一个N x M的单位矩阵,其中k指定了对角线的位置。
#如果M是None,则默认为N。如果k是正整数,则返回一个N x N的单位矩阵,其中k的行和列上的值为1,其他元素为0。
c=np.eye(3,4,k=1) print(c) print(c.shape)
2.4.numpy.diag(v, k=0)
返回一个对角线元素为v的N x N矩阵,其中k指定了对角线的位置。
如果v是一维数组,则返回一个对角线元素为v的N x N矩阵,其中k的行和列上的值为v[k],其他元素为0。
#如果v是N x 1或1 x N数组,则返回一个对角线元素为v的N x N矩阵。
d=np.diag([1,2,3,4,5]) print(d)#输出对角线元素为[1,2,3,4,5,6,7]的矩阵
e=np.diag([1,2,3,4,5,6,7],k=1) print(e)#输出对角线元素为[0,1,2,3,4,5,6]的矩阵
arr1=np.array([[1,2,3],[4,5,6],[7,8,9]])
f=np.diag(arr1)
print(f)#输出arr1的对角线元素构成的矩阵,[1 5 9]