You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何向MXNet NDArray中追加元素?附numpy实现示例

在MXNet NDArray中实现类似NumPy append的数组追加操作

我完全理解你想要实现的效果——就像你用NumPy写的那样,动态沿着行轴(axis=0)给空数组逐步追加元素。确实MXNet的NDArray没有内置的append()方法,但我们可以用mx.nd.concat()函数来达成完全一致的目的,下面是对应实现代码:

import mxnet as mx

# 初始化形状为(0,3)的空NDArray,指定整数类型
mx_a1 = mx.nd.empty((0,3), dtype='int32')
# 第一波追加两行数据
mx_a1 = mx.nd.concat(mx_a1, mx.nd.array([[1,2,3],[4,5,6]]), dim=0)
# 第二波追加一行数据
mx_a1 = mx.nd.concat(mx_a1, mx.nd.array([[7,8,9]]), dim=0)

# 转成NumPy数组方便查看输出(MXNet NDArray直接打印会带设备信息)
print("\nmx_a1:\n", mx_a1.asnumpy())
print(mx_a1.shape)

简单说明:

  • mx.nd.concat()是MXNet专门用于拼接多个NDArray的函数,其中dim参数和NumPy里的axis作用完全一致,用来指定拼接的轴方向。
  • 和你用NumPy的逻辑一样,每次拼接后把结果重新赋值给原变量,就能实现逐步扩展数组的效果。
  • 最后用asnumpy()把NDArray转成NumPy数组打印,是因为MXNet的NDArray默认打印会附带设备(CPU/GPU)信息,转成NumPy格式更贴近你原来的输出样式。

内容的提问来源于stack exchange,提问作者u2gilles

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:13:59