【问题标题】:Inserting an array inside the list of arrays在数组列表中插入一个数组
【发布时间】:2021-09-15 00:33:18
【问题描述】:

我对 numpy 数组有疑问,我不明白我做错了什么。我需要用随机整数(非零)创建一个 100x100 矩阵,最后一行应该是前面所有行的组合。这是我的代码:

non_zero_m = np.random.randint(0,10,(99,100))
arr = non_zero_m.sum(axis=0)
singular_m = np.concatenate((non_zero_m, arr))

ValueError: all the input arrays must have same number of dimensions, but the array at index 0 has 2 dimension(s) and the array at index 1 has 1 dimension(s)

我不明白为什么 python 显示数组有不同的维度

【问题讨论】:

标签: python numpy


【解决方案1】:

问题在于 arr 是一个一维数组,而您正试图将它连接到一个矩阵(二维)。

只需将第二行替换为:

arr = non_zero_m.sum(axis=0).reshape(1, -1)

这将 arr 重塑为二维数组,使得第一个轴的维度为 1(因此使 arr 实际上成为行向量),第二个轴具有保留所有 arr 元素所需的维度(这就是含义在这种情况下为 -1)。

【讨论】:

  • 非常感谢!
猜你喜欢
  • 1970-01-01
  • 2014-05-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-04
  • 2019-04-03
  • 1970-01-01
  • 2020-11-22
  • 1970-01-01
相关资源
最近更新 更多