如何在 Python 中使用 NumPy 创建向量

17 Mar 2025 | 5 分钟阅读

在本教程中,我们将学习如何使用Numpy库创建向量。我们还将探讨向量的基本运算,例如两个向量的加法、两个向量的减法、两个向量的除法、两个向量的乘法、向量点积和向量标量积。

什么是向量?

向量被称为一维数组。在Python中,向量是列表的**单个一维**数组,其行为与Python列表相同。根据谷歌的说法,向量表示方向和大小;特别是它确定一个点相对于另一个点在空间中的位置。

向量在机器学习中非常重要,因为它们具有大小和方向特征。让我们了解如何在Python中创建向量。

在Python中创建向量

Python Numpy模块提供了numpy.array() 方法,该方法创建一个一维数组,即向量。向量可以是水平的或垂直的。

语法

上述方法接受一个列表作为参数并返回numpy.ndarray。

让我们理解以下示例 -

示例-1:水平向量

输出

We create a vector from a list:
[10 20 30 40 50]

示例-2:垂直向量

输出

We create a vector from a list:
[[12]
 [40]
 [ 6]
 [10]]

Python向量的基本运算

创建向量后,我们将对向量执行算术运算。

以下是我们可以在向量中执行的基本运算列表。

  • 算术
  • 减法
  • 乘法
  • 除法
  • 点积
  • 标量乘法

两个向量相加

向量加法以逐元素的方式进行,这意味着加法将逐个元素进行,并且长度将与两个相加向量的长度相同。

语法

让我们理解下面的例子。

示例 -

输出

We create vector from a list 1:
[10 20 30 40 50]
We create vector from a list 2:
[11 12 13 14 15]
Addition of two vectors:  [21 32 43 54 65]

两个向量相减

减法与加法执行方式相同,它遵循逐元素的方法,并将向量2的元素从向量1中减去。让我们通过以下示例来理解。

示例 -

输出

We create vector from a list 1:
[10 20 30 40 50]
We create vector from a list 2:
[5 2 4 3 1]
Subtraction of two vectors:  [5 18 26 37 49]

两个向量相乘

向量1的元素与向量2相乘,并返回与相乘向量相同长度的向量。让我们通过以下示例来理解。

示例 -

输出

We create vector from a list 1:
[10 20 30 40 50]
We create vector from a list 2:
[5 2 4 3 1]
Multiplication of two vectors:  [ 50  40 120 120  50]

乘法执行如下。

vct[0] = x[0] * y[0]
vct[1] = x[1] * y[1]

向量1的第一个元素与其对应的向量2的第一个元素相乘,以此类推。

两个向量的除法运算

在除法运算中,结果向量包含两个向量元素相除得到的商值。

让我们理解下面的例子。

示例 -

输出

We create vector from a list 1:
[10 20 30 40 50]
We create vector from a list 2:
[5 2 4 3 1]
Division of two vectors:  [ 2.   10.          7.5        13.33333333        50.        ]

如上输出所示,除法运算返回了元素的商值。

向量点积

向量点积在两个相同长度的顺序向量之间执行,并返回单个点积。我们将使用.dot() 方法执行点积。它将如下执行。

让我们理解下面的例子。

示例 -

输出

We create vector from a list 1:
[10 20 30 40 50]
We create vector from a list 2:
[5 2 4 3 1]
Dot product of two vectors:  380

向量-标量乘法

在标量乘法运算中,我们将标量与向量的每个分量相乘。让我们通过以下示例来理解。

示例 -

输出

We create vector from a list 1:
[10 20 30 40 50]
Scalar Value : 5
Multiplication of two vectors:  [ 50 100 150 200 250]

在上面的代码中,标量值乘以向量中的每个元素,形式为 s * v = (s * v1, s * v2, s * v3)。


下一个主题Python的Pickle模块