python - 如何将一维 ndarray 列表转换为二维 ndarray (mxnet ndarray)

标签 python numpy mxnet numpy-ndarray

在这个例子中,我有一个一维 ndarray 列表,长度为 9,列表有 9 个元素,每个元素有 shape=(2048,) ,所以完全9 * (2048,) , 我得到这些 ndarray来自 mxnet这样每个 ndarray<NDArray 2048 @cpu(0)>数组 dtype=numpy.float32

如果我使用 np.asarray对这个列表进行改造,变成如下结果

shape=<class 'tuple'>: (9, 2048, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)

显然,我想要一个二维数组,shape=(9, 2048) , 如何解决这个问题?

ps: 我是通过保存一个 npy 发现这个问题的文件并加载它。在将其转换为 ndarray 之前,我直接保存了列表(所以np.save会自动把列表转换成ndarrary)我加载后发现形状变成了上面的东西,真是不正常

下面的答案,np.vstacknp.array两者都适用于共同的 listndarray问题,但无法解决我的问题,所以我怀疑这是 mxnet 的一些特例

最佳答案

您可以使用np.vstack。这是一个例子:

import numpy as np

li = [np.zeros(2048) for _ in range(9)]
result = np.vstack(li)
print(result.shape)

这会根据需要输出 (9, 2048)

关于python - 如何将一维 ndarray 列表转换为二维 ndarray (mxnet ndarray),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52124584/

相关文章:

machine-learning - 有没有使用 MxNet 构建卷积自动编码器的玩具示例?

Python字典: Return First Value in List Or String

python - 覆盖 Python 的 'in' 运算符?

python - 从命名空间创建命名元组?

python - 如何使用 numpy 数组中的索引进行计算

python - 有没有更快的 bin 文件到 numpy 数组的方法?

numpy - Lua: table 的尺寸

deep-learning - 如何加载经过训练的 MXnet 模型?

python - 在 django 框架上将 pyplot 图嵌入到 html 中

python - scikit-learn, keras, tensorflow 和 mxnet 中保存机器学习模型的所有格式是什么?