python C 有效地减去不同形状的numpy数组
发布时间:2023-12-21 19:59:56 所属栏目:Python 来源:DaWei
导读: 使用numpy的优秀广播规则,您可以从形状(5,3)数组X中减去形状(3,)数组v
X - v
结果是形状(5,3)数组,其中每行i是差X [i] -v.
有没有办法从X中减去一个形状(n,3)数组w,以便从整个数
X - v
结果是形状(5,3)数组,其中每行i是差X [i] -v.
有没有办法从X中减去一个形状(n,3)数组w,以便从整个数
使用numpy的优秀广播规则,您可以从形状(5,3)数组X中减去形状(3,)数组v X - v 结果是形状(5,3)数组,其中每行i是差X [i] -v. 有没有办法从X中减去一个形状(n,3)数组w,以便从整个数组X中减去w的每一行而不显式使用循环? 解决方法 您需要使用 None/np.newaxis扩展X的尺寸以形成3D阵列,然后通过w进行减法.这将使 broadcasting在这个3D操作中发挥作用并产生形状为(5,n,3)的输出.实现看起来像这样 C X[:,None] - w # or X[:,np.newaxis] - w相反,如果所需的排序是(n,5,3),那么你需要扩展w的维度,就像这样 C X - w[:,None] # or X - w[:,np.newaxis]样品运行 C In [39]: X Out[39]: array([[5,4],[8,1,8],[0,5],3,1],[6,2,5]]) In [40]: w Out[40]: array([[8,[7,8,6]]) In [41]: (X[:,None] - w).shape Out[41]: (5,3) In [42]: (X - w[:,None]).shape Out[42]: (2,3)(编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- python – 查找numpy数组中每行的最大值以及相同大小的另一
- 如何在python中捕获异常(在C中引起)
- python – 最终确保一些代码以原子方式运行,无论如何?
- 是否有一种标准方法来声明不支持旧的python版本?
- python-2.7 – Sphinx的LaTeX错误:找不到文件`titlesec.st
- 如何在python中运行非线性回归
- 范围 – Python的非本地取决于层次结构的级别?
- python – 在模板中显示存储为二进制blob的图像
- python – Matplotlib显示多个图像与for循环
- python – 如何覆盖BaseHTTPRequestHandler log_message()方
推荐文章
站长推荐