系列文章目录

numpy的安装与基础入门[向量、矩阵与维度]



numpy的安装与基础入门[向量、矩阵与维度]

  • 系列文章目录
  • 前言
  • numpy安装
  • 向量与矩阵
  • 生成向量
  • 生成矩阵
  • 向量类型



前言

numpy是科学计算以及机器学习深度学习的基础必备工具,本文将介绍numpy的安装,以及关于向量、矩阵相关的基础知识。


numpy安装

在conda下使用conda install numpy安装。
如果没有conda可以使用pip install numpy安装。

向量与矩阵

我们将使用import numpy as np对numpy进行引入。

生成向量

通过迭代生成向量

numpy中可以使用np.arange生成连续整数的向量

a = np.arange(6)
a

运行结果:array([0, 1, 2, 3, 4, 5])
这种是只限定了最大边界不超过6

如果我们想要设置一个最小值获取有下边界的向量

a = np.arange(1, 6)
a

运行结果:array([1, 2, 3, 4, 5])

同时我们还可以设置arange的第3个参数,来限定每隔几个数选取
加上我们每隔两个取一个数

a = np.arange(1, 6, 2)
a

运行结果:array([1, 3, 5])

前面都是生成值为整数的向量,我们可以使用np.linspace来生成不仅限于整数值的向量
np.linspace第一个参数是最小值,即下线,第二个参数是最大值,即上线,第三个参数是生成数据个数,下面的例子是均匀生成5个从0到10

a = np.linspace(0, 10, num=5)
a

运行结果:array([ 0. , 2.5, 5. , 7.5, 10. ])

通过列表生成向量
在numpy中,我们可以使用np.array把一些格式的数据转换成array类型的数据,所以我们可以通过列表生成向量。

我们可以使用

lst = [1, 2, 3, 4, 5, 6]
a = np.array(lst)
a

a = np.array([1, 2, 3, 4, 5, 6])
a

通过列表生成向量。

生成特殊向量
我们可以通过np.ones,np.zeros,np.empty生成值为1,值为0以及随机值的向量

np.zeros(3)

运行结果:array([0., 0., 0.])

np.ones(3)

运行结果:array([1., 1., 1.])

np.empty(3) # 按官方文档来看是随机的,但是不知道为什么我这里一直是全1的值

运行结果:array([1., 1., 1.])

生成矩阵

从列表中生成矩阵
也可以使用多维列表生成多维向量,即矩阵

a = np.array([[1, 2, 3, 4], 
              [5, 6, 7, 8], 
              [9, 10, 11, 12]])
a

运行结果:

python numpy生成列向量 numpy创建向量_最小值


生成特殊矩阵

我们可以通过np.ones,np.zeros,np.empty生成值为1,值为0以及随机值的矩阵

np.zeros((3, 3))

运行结果:

python numpy生成列向量 numpy创建向量_numpy_02

np.ones((3, 3))

运行结果:

python numpy生成列向量 numpy创建向量_学习_03

np.empty((3, 3))

python numpy生成列向量 numpy创建向量_python numpy生成列向量_04

向量类型

我们可以使用np.int8, np.int16,np.int32,np.int64,np.float16,np.float32,np.float64,np.double来实现对向量类型进行设置。下面我们以np.int8为例设置向量类型并展示效果

np.ones((3, 3), dtype=np.int8)

运行结果:

python numpy生成列向量 numpy创建向量_python numpy生成列向量_05

np.array([1, 2, 3, 4], dtype=np.int8)

运行结果:array([1, 2, 3, 4], dtype=int8)