- 此问题在此处已有答案**:
NumPy save some arrays at once(2个答案)
三年前关闭了。
我目前正在尝试将numpy数组的列表保存到单个文件中,这种列表的示例可以是以下形式
import numpy as np
np_list = []
for i in range(10):
if i % 2 == 0:
np_list.append(np.random.randn(64))
else:
np_list.append(np.random.randn(32, 64))
我可以使用savez
通过遍历list将它们合并到一个文件中,但是还有其他方法吗?我正在尝试保存函数model.get_weights()
返回的权重,这是ndarray
的列表,在从保存的文件中检索权重后,我打算使用model.set_weights(np_list)
将这些权重加载到另一个模型中。因此,列表的格式必须保持不变。如果有人有优雅的方法,请告诉我。
1条答案
按热度按时间t5zmwmid1#
我会选择
np.save
和np.load
,因为它与平台无关,比savetxt
快,并且可以处理数组列表,例如:这是针对np.save和np.load的文档。在此答案中,您可以更好地讨论How to save and load numpy.array() data properly?
编辑
就像@AlexP提到的
numpy >= v1.24.2
不支持不同大小和类型的数组,所以这就是为什么强制转换是必要的。