栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

numpy:各种形状的一维数组

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

numpy:各种形状的一维数组

请注意,您不仅在处理一维数组:

In [6]: a.ndimOut[6]: 1In [7]: b.ndimOut[7]: 2

因此,

b
是2D阵列。您还可以在
b.shape
:(1,3)的输出中看到这一点,因为(3,)是一个维度,它表示两个维度。

np.dot
1D和2D阵列的行为不同(来自docs):

对于2-D数组,它等效于矩阵乘法,对于1-D数组,其等效于向量的内积

这就是您获得不同结果的原因,因为您正在混合1D和2D数组。由于

b
是2D数组,请
np.dot(b, b)
尝试在两个1x3矩阵上进行矩阵乘法,但失败。


对于一维数组,np.dot会做向量的内积:

In [44]: a = np.array([1,2,3])In [45]: b = np.array([1,2,3])In [46]: np.dot(a, b)Out[46]: 14In [47]: np.inner(a, b)Out[47]: 14

对于2D数组,它是矩阵乘法(因此1x3 x 3x1 = 1x1或3x1 x 1x3 = 3x3):

In [49]: a = a.reshape(1,3)In [50]: b = b.reshape(3,1)In [51]: aOut[51]: array([[1, 2, 3]])In [52]: bOut[52]:array([[1],       [2],       [3]])In [53]: np.dot(a,b)Out[53]: array([[14]])In [54]: np.dot(b,a)Out[54]:array([[1, 2, 3],       [2, 4, 6],       [3, 6, 9]])In [55]: np.dot(a,a)---------------------------------------------------------------------------ValueError          Traceback (most recent call last)<ipython-input-55-32e36f9db916> in <module>()----> 1 np.dot(a,a)ValueError: objects are not aligned


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/669153.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号