【问题标题】:Creating a matrix of matrices using numpy.array()使用 numpy.array() 创建矩阵矩阵
【发布时间】:2020-07-09 16:32:09
【问题描述】:

我一直在尝试使用 numpy 函数 numpy.array() 创建矩阵矩阵,但遇到了困难

我特别想创建以下矩阵

[

[

 [                    [
   [ 1 ,2 ]             [ 1 , 2 ]
   [ 3 ,4 ]             [ 3 , 4 ]
 ]               ,    ]

]

[

 [                    [
   [ 1 ,2 ]             [ 1 , 2 ]
   [ 3 ,4 ]             [ 3 , 4 ]
 ]               ,    ]  

]

]

更准确地说是one

我在 Jupyter 中尝试了以下行

x = np.array( [
        [   [ 1,2 ] ,[ 3, 4]  ] ,  [   [ 1,2 ] ,[ 3, 4]  ] ,
        [   [ 1,2 ] ,[ 3, 4]  ] ,  [   [ 1,2 ] ,[ 3, 4]  ]
])

但它所做的是将所有 2X2 矩阵按行排列。

我无法获取行形式的 2( 2X2 ) 矩阵并将它们复制到列中或列形式的 2 ( 2X2 ) 矩阵中并将它们复制到行

知道如何使用 numpy.array() 或任何其他方法(使用 numpy 函数)来创建它

这看起来很简单,但我在编写代码时遇到了困难。 提前致谢。

【问题讨论】:

  • np.array 完全复制了输入括号的嵌套。
  • numpy 不会像这样显示 (2,2,2,2) 数组。不要将显示布局与实际数据形状混淆

标签: python numpy matrix


【解决方案1】:
>>> a = np.array([[[[1,2],[3,4]], [[1,2], [3,4]]], [[[1,2],[3,4]], [[1,2], [3,4]]]])
>>> a
array([[[[1, 2],
         [3, 4]],

        [[1, 2],
         [3, 4]]],


       [[[1, 2],
         [3, 4]],

        [[1, 2],
         [3, 4]]]])

【讨论】:

  • 是的,但我希望它们也复制到列中,一个 2X2 矩阵,其中包含 2X2 矩阵作为元素
  • 所以你的意思是 4D 矩阵?我编辑了答案,如果您正在寻找,请告诉我
  • 是的,一个 4D 矩阵,一个 2X2 矩阵,其元素是 2X2 矩阵
  • shape 是 (2,2,2,2)。
  • 对,这就是我要找的东西,我花了一段时间才意识到
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-31
  • 1970-01-01
  • 1970-01-01
  • 2013-11-18
相关资源
最近更新 更多