【发布时间】:2014-04-19 00:09:03
【问题描述】:
使用标准 Python 数组,我可以执行以下操作:
arr = []
arr.append([1,2,3])
arr.append([4,5,6])
# arr is now [[1,2,3],[4,5,6]]
但是,我不能在 numpy 中做同样的事情。例如:
arr = np.array([])
arr = np.append(arr, np.array([1,2,3]))
arr = np.append(arr, np.array([4,5,6]))
# arr is now [1,2,3,4,5,6]
我也查看了vstack,但是当我在一个空数组上使用vstack 时,我得到:
ValueError: all the input array dimensions except for the concatenation axis must match exactly
那么如何在 numpy 中将新行追加到空数组中?
【问题讨论】:
-
如果它是空的,何必呢?只需从仅包含第一行的数组开始。
-
我只想知道是否可以追加到一个空的numpy数组。有时写这样的代码会更干净,因为追加操作是在循环中。
-
鉴于 numpy 数组的工作方式,您最好先构建一个空数组,然后将数据放入,例如见stackoverflow.com/questions/568962/…
-
如何创建一维数组?
np.empty(3,float)给出array([0.00e+000, 0.00e+000, 2.77e-322]),而不是array([])。