# 创建矩阵
np.array([[1, 2, 3], [4, 5, 6.1]])
array([[1. , 2. , 3. ],
[4. , 5. , 6.1]])
只要有一个是浮点数,其它元素自动提升为浮点数
# 定义类型
np.array([1, 2, 3], dtype=complex)
array([1.+0.j, 2.+0.j, 3.+0.j])
0-n 的向量
arr1 = np.arange(10)
arr1
array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])
# 基于步长构造序列
np.arange(1, 20, step=7)
array([ 1, 8, 15])
# 基于数量构造序列
np.linspace(1, 20, num=7)
array([ 1. , 4.16666667, 7.33333333, 10.5, 13.66666667, 16.83333333, 20. ])
# 标准正态分布 size=2*3
normal = np.random.randn(2, 3)
normal
array([[ 0.24275138, -0.10650198, -1.08604427],
[-0.42608398, 0.32057432, 0.42782365]])
其它概率分布:
random.normal()
random.beta()
random.dirichlet()
random.poisson() …
# 零矩阵
zero = np.zeros([2, 3])
zero
array([[0., 0., 0.],
[0., 0., 0.]])
# 空矩阵
empty = np.empty([2, 3])
empty
array([[0., 0., 0.],
[0., 0., 0.]])
# 单位阵
eye = np.eye(2)
eye
array([[1., 0.],
[0., 1.]])
# 自定义数据类型
type_person = np.dtype([('age', 'uint8'), ('gender', 'bool')])
a = np.array([(8, True), (16, False), (10, True)], dtype = type_person)
a
array([( 8, True), (16, False), (10, True)],
dtype=[('age', 'u1'), ('gender', '?')])