【问题标题】:Python List of np arrays to arrayPython的np数组列表到数组
【发布时间】:2011-11-04 06:41:26
【问题描述】:

我正在尝试将 2d numpy 数组列表转换为 2d numpy 数组。例如,

dat_list = []
for i in range(10):
    dat_list.append(np.zeros([5, 10]))

我想从这个列表中得到一个 (50, 10) 的数组。但是,当我尝试以下操作时,我得到一个 (10,5,10) 数组。

output = np.array(dat_list)

想法?

【问题讨论】:

    标签: python arrays list numpy


    【解决方案1】:

    你想堆叠它们:

    np.vstack(dat_list)
    

    【讨论】:

    • 对于不同形状的数组列表,应该使用:np.concatenate(list, axis=None)
    【解决方案2】:

    以上接受的答案对于您要求的二维数组是正确的。但是对于 3D 输入数组, vstack() 会给你一个令人惊讶的结果。对于那些,使用 stack(, 0)。

    【讨论】:

      【解决方案3】:

      https://docs.scipy.org/doc/numpy/reference/generated/numpy.append.html 详情。您可以使用追加,但需要指定要追加的轴。

      dat_list.append(np.zeros([5, 10]),axis=0)
      

      【讨论】:

        猜你喜欢
        • 2019-10-11
        • 2018-08-28
        • 1970-01-01
        • 2016-03-08
        • 2020-10-18
        • 1970-01-01
        • 1970-01-01
        • 2022-08-03
        • 1970-01-01
        相关资源
        最近更新 更多