python - 即时更改 numpy 数组大小
问题描述
我有一个 numpy 数组,它开始为空,并且在循环过程中应该接收许多条目,尽管我不知道在执行之前会有多少条目。
我尝试了不同的方法来取得不同的成功,目前我的代码看起来像这样:
pi = np.empty((0))
for...
if...
np.concatenate([pi, np.array([0])]) # supposed to ad a new column with entry '0'
然而print(pi)
返回[]
我怀疑我对 numpy 的有限知识可能是罪魁祸首,尽管我无法发现任何明显的错误。
此外,由于我需要在循环中处理数组中的值,不幸的是我不能等到循环初始化
解决方案
您没有将新数组分配给 pi。
pi = np.empty((0))
for...
if...
pi = np.concatenate([pi, np.array([0])])