NumPy的np.dot函数:计算点积与矩阵乘积的利器

np.dot 是 NumPy 库中的一个函数,用于计算两个数组的点积。它支持多种类型的输入数组,包括向量和矩阵,并返回它们的点积或矩阵乘积。

对于两个向量(一维数组),np.dot 返回它们的点积,即对应元素的乘积之和。对于矩阵和向量的乘积,或者两个矩阵的乘积,np.dot 执行标准的线性代数矩阵乘法。

下面是一些 np.dot 的基本用法示例:

两个向量的点积

复制代码

python复制代码

|---|----------------------------|
| | import numpy as np |
| | |
| | a = np.array([1, 2, 3]) |
| | b = np.array([4, 5, 6]) |
| | |
| | result = np.dot(a, b) |
| | print(result) # 输出:32 |

矩阵与向量的乘积

复制代码

python复制代码

|---|-----------------------------------|
| | A = np.array([[1, 2], [3, 4]]) |
| | b = np.array([5, 6]) |
| | |
| | result = np.dot(A, b) |
| | print(result) # 输出:[17 39] |

两个矩阵的乘积

复制代码

python复制代码

|---|-----------------------------------|
| | A = np.array([[1, 2], [3, 4]]) |
| | B = np.array([[5, 6], [7, 8]]) |
| | |
| | result = np.dot(A, B) |
| | print(result) |
| | # 输出: |
| | # [[19 22] |
| | # [43 50]] |

请注意,当计算两个矩阵的乘积时,左侧矩阵的列数必须等于右侧矩阵的行数,否则 NumPy 会抛出一个错误。

np.dot 在进行数组运算时非常高效,因为它利用了底层的优化算法。在处理大型数组或进行复杂的数学运算时,使用 np.dot 通常比手动实现这些运算要快得多。

相关推荐
学好statistics和DS3 小时前
三个好思路:SQL并行化处理、混淆矩阵和特征交叉
数据库·sql·矩阵
前端炒粉5 小时前
21.搜索二维矩阵 II
前端·javascript·算法·矩阵
爱代码的小黄人7 小时前
一般角度的旋转矩阵的推导
线性代数·算法·矩阵
西西弗Sisyphus10 小时前
线性代数 - 特征值和特征向量可视化是什么样的
线性代数·特征值·特征向量
passxgx10 小时前
10.7 密码学中的线性代数
线性代数·密码学
phoenix@Capricornus10 小时前
多项分布 (Multinomial Distribution)
线性代数·机器学习·概率论
在路上看风景16 小时前
1.8 分块矩阵
线性代数·矩阵
ChoSeitaku16 小时前
线代强化NO3|线性方程组|特征值和特征向量|矩阵的相似性|实对称矩阵|二次型
线性代数·矩阵
7澄116 小时前
深入解析 LeetCode 1572:矩阵对角线元素的和 —— 从问题本质到高效实现
java·算法·leetcode·矩阵·intellij-idea
卡提西亚16 小时前
一本通网站1125题:矩阵乘法
c++·算法·矩阵·编程题·一本通