如何使1d数组乘以2d数组导致python的3d数组

亨森

我担心这可能是一个非常愚蠢的问题。但是我找不到解决方案。我想在python中执行以下操作而不使用循环,因为我正在处理大型数组。有什么建议吗?

import numpy as np
a = np.array([1,2,3,..., N]) # arbitrary 1d array
b = np.array([[1,2,3],[4,5,6],[7,8,9]]) # arbitrary 2d array
c = np.zeros((N,3,3))
c[0,:,:] = a[0]*b
c[1,:,:] = a[1]*b
c[2,:,:] = a[2]*b
c[3,:,:] = ...
...
...
c[N-1,:,:] = a[N-1]*b
帝斯曼

为了避免Python级循环,您可以使用np.newaxis扩展a(或无,这是同一件事):

>>> a = np.arange(1,5)
>>> b = np.arange(1,10).reshape((3,3))
>>> a[:,None,None]*b
array([[[ 1,  2,  3],
        [ 4,  5,  6],
        [ 7,  8,  9]],

       [[ 2,  4,  6],
        [ 8, 10, 12],
        [14, 16, 18]],

       [[ 3,  6,  9],
        [12, 15, 18],
        [21, 24, 27]],

       [[ 4,  8, 12],
        [16, 20, 24],
        [28, 32, 36]]])

np.einsum,这在这里是过大的,但通常很方便,并且非常明确地表明您希望使用坐标进行的操作:

>>> c2 = np.einsum('i,jk->ijk', a, b)
>>> np.allclose(c2, a[:,None,None]*b)
True

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使1d数组乘以2d数组导致python的3d数组

来自分类Dev

我应该如何用numpy将3d数组中的1d数组乘以2d矩阵

来自分类Dev

如何将2D numpy数组与3D数组矩阵相乘以得到3D数组?

来自分类Dev

如何将Python 1D,2D或3D NumpPy数组保存到MATLAB .mat

来自分类Dev

2d数组和1d长数组的块积,结果应该是3d数组

来自分类Dev

numpy:将2D数组乘以1D数组

来自分类Dev

使用foreach在PHP中将2d数组乘以1d数组

来自分类Dev

将3D数组的1D数组添加到3D数组的每个2D数组上

来自分类Dev

通过乘以numpy中的向量将2D数组转换为3D数组

来自分类Dev

如何使用python从1d数组中创建具有3个元素的2d数组

来自分类Dev

C ++ 2D数组到1D数组

来自分类Dev

在1d数组中填充2d数组

来自分类Dev

将2d矩阵与3d数组相乘以获得4d数组以获取组件分数

来自分类Dev

如何将1D数组转换为3D数组?

来自分类Dev

在3D数组中查找2D数组

来自分类Dev

如何对1d和2d数组强制使用2d形状

来自分类Dev

如何将3D尺寸不固定的3D数组展平为1D数组?

来自分类Dev

MATLAB:3D数组除以1D向量

来自分类Dev

Python Numpy在带有2D数组的1D数组上相交1d

来自分类Dev

如何使用numpy从两个1D数组生成布尔2D数组

来自分类Dev

如何从2d数组中选择1d数组?

来自分类Dev

如何将2D数组转换为1D数组以在视图中显示

来自分类Dev

如何在2D数组中找到1D数组

来自分类Dev

如何在1D数组上使用函数创建2D Numpy数组?

来自分类Dev

如何使用1d数组中的值填充2d数组?

来自分类Dev

在C中如何基于1D数组分配2D数组?

来自分类Dev

Java:如何在1D数组中存储2D数组

来自分类Dev

Java如何从2D数组获取1D数组引用

来自分类常见问题

Python脚本中的错误“预期的2D数组,取而代之的是1D数组:”?

Related 相关文章

  1. 1

    如何使1d数组乘以2d数组导致python的3d数组

  2. 2

    我应该如何用numpy将3d数组中的1d数组乘以2d矩阵

  3. 3

    如何将2D numpy数组与3D数组矩阵相乘以得到3D数组?

  4. 4

    如何将Python 1D,2D或3D NumpPy数组保存到MATLAB .mat

  5. 5

    2d数组和1d长数组的块积,结果应该是3d数组

  6. 6

    numpy:将2D数组乘以1D数组

  7. 7

    使用foreach在PHP中将2d数组乘以1d数组

  8. 8

    将3D数组的1D数组添加到3D数组的每个2D数组上

  9. 9

    通过乘以numpy中的向量将2D数组转换为3D数组

  10. 10

    如何使用python从1d数组中创建具有3个元素的2d数组

  11. 11

    C ++ 2D数组到1D数组

  12. 12

    在1d数组中填充2d数组

  13. 13

    将2d矩阵与3d数组相乘以获得4d数组以获取组件分数

  14. 14

    如何将1D数组转换为3D数组?

  15. 15

    在3D数组中查找2D数组

  16. 16

    如何对1d和2d数组强制使用2d形状

  17. 17

    如何将3D尺寸不固定的3D数组展平为1D数组?

  18. 18

    MATLAB:3D数组除以1D向量

  19. 19

    Python Numpy在带有2D数组的1D数组上相交1d

  20. 20

    如何使用numpy从两个1D数组生成布尔2D数组

  21. 21

    如何从2d数组中选择1d数组?

  22. 22

    如何将2D数组转换为1D数组以在视图中显示

  23. 23

    如何在2D数组中找到1D数组

  24. 24

    如何在1D数组上使用函数创建2D Numpy数组?

  25. 25

    如何使用1d数组中的值填充2d数组?

  26. 26

    在C中如何基于1D数组分配2D数组?

  27. 27

    Java:如何在1D数组中存储2D数组

  28. 28

    Java如何从2D数组获取1D数组引用

  29. 29

    Python脚本中的错误“预期的2D数组,取而代之的是1D数组:”?

热门标签

归档