np.array() 与 np.mat() 比较


1. 生成数组所需格式不同

np.mat()可以从字符串或列表中生成。np.array()只能从列表中生成。

import numpy as np

a = np.mat(data="1, 2; 3, 4")
b = np.array([[1, 2], [3, 4]])
print(a)
print(b)

结果:

[[1 2]
 [3 4]]


[[1 2]
 [3 4]]


2. 计算方式不同

np.array()生成的数组,np.dot() 表示矩阵乘积;*multiply 表示点乘。

print(np.dot(b, b))

print(b * b)
print(np.multiply(b, b))

结果:

[[ 7 10]
 [15 22]]


[[ 1  4]
 [ 9 16]]
[[ 1  4]
 [ 9 16]]

np.mat()生成的数组,np.dot() 和 * 表示矩阵乘积;np.multiply() 表示点乘。

print(np.dot(a, a))
print(a * a)

print(np.multiply(a, a))

结果:

[[ 7 10]
 [15 22]]
[[ 7 10]
 [15 22]]


[[ 1  4]
 [ 9 16]]

总结:np.dot() 一定是矩阵乘积,np.multiply() 一定是点乘。



posted @   做梦当财神  阅读(437)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
历史上的今天:
2017-10-20 Jupyter notebook
点击右上角即可分享
微信分享提示