【问题标题】:Connecting an array of numpys [duplicate]连接一个numpys数组[重复]
【发布时间】:2020-11-18 12:12:28
【问题描述】:

我有一个长度相同的 numpy 列表。例如:

my_list = [np.array([2, 3, 5, 5]),
           np.array([5, 4, 1, 4]),
           np.array([8, 4, 5, 1]),
           np.array([7, 4, 5, 1])]

我想把列表变成 2d numpy:

[[2, 3, 5, 5],
 [5, 4, 1, 4],
 [8, 4, 5, 1],
 [7, 4, 5, 1]]

以下代码确实执行了该操作,但以一种草率的方式。

结果也没有按照想要的顺序排列:

combined = []
for i in my_list :
    if len(combined) == 0:
        combined = i
    else:
        combined  = np.vstack((i,combined))
    
print(combined)

需要改变什么才能得到想要的结果?

【问题讨论】:

  • np.vstack(my_list)?
  • 始终假设您的问题已经被问过并进行研究
  • 查看vstack 文档。它的参数可以是整个列表,而不仅仅是 2 的列表。

标签: python numpy


【解决方案1】:

最直接的方法

np.vstack(my_list)

np.concatenate(my_list).reshape(len(my_list),-1)

【讨论】:

    【解决方案2】:

    只需执行np.array(my_list) 即可完成工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-09
      • 2021-01-02
      • 2021-05-19
      • 2014-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多