【发布时间】:2021-07-12 07:18:05
【问题描述】:
我有 2 个一维 NumPy 数组
a = np.array([0, 4])
b = np.array([3, 2])
我想创建一个二维数字数组
c = np.array([[0,1,2], [4,5]])
我也可以使用 for 循环来创建它
编辑:基于@jtwalters cmets 更新循环
c = np.zeros(b.shape[0], dtype=object)
for i in range(b.shape[0]):
c[i] = np.arange(a[i], a[i]+b[i])
如何通过矢量化/广播实现这一点?
【问题讨论】:
-
[[0,1,2], [4,5]]不能做成二维数组。 -
np.arange(6).reshape(2,3)适合你吗? -
我同意你的第一条评论。但是
np.arange(6).reshape(2,3)不起作用。 2 行应该是np.arange(a[i], a[i]+b[i])请注意3不在我的结果数组中。 -
我试图从一个令人困惑的例子中弄清楚。
-
你的循环不起作用。
标签: arrays python-3.x numpy