python的numpy中np.dot()详解

不积跬步无以至千里

dot函数是np中的矩阵乘法,假设 a,b为矩阵,a.dot(b) 等价于 np.dot(a,b) 。

a = np.array([2,3,4,5,6])
b = a.T
print(a)
print(b)
print(np.dot(a,b))


print('**********')
# 二维矩阵乘法
a = np.array([[1,1],[1,0]])
b = np.arange(4).reshape((2,2))
print(a)
print(b)
c_dot = np.dot(a,b)
print(c_dot)

废话不多说,见图解
一维
在这里插入图片描述
二维
也就是数学中的矩阵相乘
取出 a中的第一行 (1 1)去乘 b中的第一列(0 2)
1* 0+ 1 * 2 = 2
取出a中的第一行(1 1)乘b中的第二列(1 3)
1* 1+1* 3=4
在这里插入图片描述

### Python Numpy `np.dot` 函数详解 #### 功能描述 `np.dot` 是 NumPy 库中的一个重要函数,用于计算两个数组间的点积。对于二维数组而言,这相当于执行矩阵乘法;而对于一维数组,则是它们对应位置元素相乘后的求和操作[^1]。 #### 参数解释 该方法接受两个主要参数: - **a**: 输入的第一个数组。 - **b**: 输入的第二个数组。 此外还可以接收其他可选参数如 `out` 来指定输出缓冲区的位置[^2]。 #### 返回值 返回的是输入数组按规则计算得到的结果数组或标量值(当两者均为向量时)。如果第一个参数是一维而另一个不是,则会抛出错误提示不兼容的操作数形状[^4]。 #### 示例代码展示 下面通过具体例子来理解如何使用此功能: ```python import numpy as np # 一维数组之间做内积运算 vector_a = np.array([1, 2, 3]) vector_b = np.array([4, 5, 6]) result_vector_dot = vector_a @ vector_b # 或者使用 np.dot(vector_a, vector_b) print(f"Vector dot product result: {result_vector_dot}") # 输出应为 32 # 矩阵间进行标准矩阵乘法 matrix_c = np.mat([[1, 2], [3, 4]]) matrix_d = np.mat([[4, 5], [6, 7]]) result_matrix_multiply = matrix_c * matrix_d # 对于mat对象可以直接用*号代替dot() alternative_result = np.dot(matrix_c, matrix_d) print("Matrix multiplication results:") print(alternative_result) ``` 上述代码展示了两种不同类型的输入——向量与矩阵下 `np.dot()` 的应用方式及其预期输出效果[^3]。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一年又半

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值