目前,我正在这样做:
myDict = {}
for in range(10):
myDict[i] = np.ones(8)
最后我想要的是一个方形数组,理想情况下我不必预先定义所有几何图形。
我尝试过这个:
myArray = np.array([])
for i in range(10):
myArray[i] = np.ones(8)
但它不允许我索引。
最干净的方法是什么?
最佳答案
根据this post ,有两种大致相同有效的方法:
第一个,也是最简单的,是将 numpy 数组附加到循环中的普通 Python 列表,并在最后调用 np.concatenate 一次
在开头分配一个大的零数组(如果您知道维度)并对其进行索引,如下所示:
myArray = np.zeros((10, 8))
for i in range(10):
myArray[i,:] = np.ones(8)
第二种方法可能更容易移植到最终移植到 C 或进一步矢量化。
关于python - 在循环中附加到 numpy 数组的最干净的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69118476/