numpy创建矩阵
前面提到,numpy主要是针对数组和矩阵的操作。下面我们分别创建数组和矩阵。
import numpy as np
x0=np.array([1,2,3,4])
x1=np.array([[1,2,3,4],[1,2,3,4]])
print(x0,x1,sep='\n')
在numpy中,使用array创建数组和矩阵。其中,创建矩阵时整个矩阵用一个中括号,每一行用一个中括号,每行之间用逗号分隔。
除了使用array创建矩阵外,还有一些特殊的矩阵可以利用现有的函数创建。
创建3×3的零矩阵:
import numpy as np
x=np.zeros((3,3),dtype=np.int16)
print(x)
注意zeros中接受的是一个shape参数,3×3需要使用括号括起来。dtype是设置元素的数据类型,这里设置的是int16类型。
创建3×3的全为1的矩阵:
import numpy as np
x=np.ones((3,3),dtype=np.int16)
print(x)
创建未初始化的矩阵:
import numpy as np
x=np.empty((3,3),dtype=np.int16)
print(x)
该矩阵中的元素未初始化的。
创建随机矩阵:
import numpy as np
x=np.random.rand(3,4)
#另一种形式输入x=np.random.random((3,4))
print(x)
该矩阵中的元素为随机的,且为在0到1之间的小数。
先创建数组再利用reshape改为矩阵:
import numpy as np
x=np.arange(0,12).reshape(3,4)
#x=np.linspace(0,11,12).reshape(3,4)
print(x)
这里arange创建了从0到11一共12个整数的一维数组,(arange(0,12)其实是左闭右开)在改成3×4的矩阵。
或者利用注释中的linspace函数创建也可,两者是一样的效果。只不过linspace三个参数表示从0到11创建12个等差数(左闭右闭)。arange表示从0到11步长为1(不写默认步长为1,也可以自己规定步长大小)